-1
A
回答
0
使用case
表達爲每列。
select case when column1 = 'X' then 'Column1' else <whatever> end as column1,
case when column2 = 'X' then 'Column2' else <whatever> end as column2,
...
case when column1340 = 'X' then 'Column1340' else <whatever> end as column1340
from tablename
如果你只是想要NULL而不是其他任何東西,你可以跳過else <whatever>
部分。
0
對於1300列,我會去動態SQL
Declare @SQL varchar(max) = ''
Select @SQL = @SQL+coalesce(';Update ['+Table_Name+'] Set ['+Column_Name+']='''+Column_Name+''' where ['+Column_Name+']=''X''' ,'')
From (Select Table_Name,Column_Name From INFORMATION_SCHEMA.COLUMNS where Table_Name='SomeTable') A
Print @SQL
--Exec(@SQL)
返回
;更新[SomeTable]中的[列1] = '列1',其中[列1] = 'X';更新[SomeTable ] Set [column2] ='column2'where [column2] ='X';更新[SomeTable] Set [column3] ='column3'其中[column3] ='X'
+0
這聽起來不錯,但我很遺憾不得不在Access中這樣做,所以我不知道動態SQL是否可行。 – shrimpdrake
+0
對不起,我是SQL Server中心。當我看到我剛剛設想的標記SQL時。 –
相關問題
- 1. 將工具提示RGB值替換爲其顏色名稱
- 2. 將一串UTF代碼點轉換爲其各自的值
- 3. XSLT將名稱值對轉換爲其對應的XML
- 4. 獲取列名,然後將其替換爲rs.getString()?
- 5. 將WSDL轉換爲其各自的HTTP綁定
- 6. 用其他名稱相同的名稱替換列,但一直填充它
- 7. awk用其散列值替換列
- 8. 從列表中刪除元素並將其替換爲新值
- 9. 如何用其名稱替換輸入值?
- 10. Bash腳本用動態名稱重命名文件夾並將其替換爲
- 11. 將ID列表轉換爲其他值
- 12. sql在其他列中用值替換空值
- 13. 將jquery.js重命名爲其他名稱
- 14. 如何用SQL查詢中的名稱替換列值?
- 15. SQL:如何用基於字母表的其他值替換列?
- 16. 用其他值替換零序列
- 17. 熊貓 - 選擇列使用其他列值作爲列名稱
- 18. 用名稱替換值
- 19. R使用data.table語法將邏輯列中的正值替換爲列名稱
- 20. 將行轉換爲列並將兩列合併爲其值
- 21. SQL子查詢列其中名稱包含值
- 22. 根據其他列表的值替換列表中的值?
- 23. 查找元素並將其替換爲
- 24. 將節點的值替換爲其所有後代的總和
- 25. 自動佈局 - 將其中一個UILabel的原點替換爲其他
- 26. TCLAP:所有參數的輸出列表及其各自的值
- 27. 將UIImage保存爲其他名稱
- 28. 將文件保存爲其他名稱
- 29. 連接列(用戶選擇)並將其替換爲新列
- 30. 刪除android啓動器並將其替換爲我自己的
我有一大組列不會將他們每個人都輸入到sql請求中,也不會很自適應。 – shrimpdrake
1340列你遇到了麻煩......要麼使用動態sql,要麼重新設計數據庫。 – jarlh