Vin*_*nod 1 sql sql-server sql-server-2005
我有一个包含10列的表格col_1,col_2,.... col_10.我想写一个select语句,它将选择一行的值和这10列中的一列.我有一个变量,将决定从哪个列中进行选择.可以在从变量动态决定列名的位置写入此类查询.
Joe*_*orn 11
是的,使用CASE声明:
SELECT CASE @MyVariable
WHEN 1 THEN [Col_1]
WHEN 2 THEN [Col_2]
...
WHEN 10 THEN [Col_10]
END
Run Code Online (Sandbox Code Playgroud)
这是否是一个好主意完全是另一个问题.你应该使用比Col_1,Col_2等更好的名字.
您也可以使用其他人建议的字符串替换方法.但是,这是最后的选择,因为它可以打开你的代码到SQL注入攻击.
| 归档时间: |
|
| 查看次数: |
18270 次 |
| 最近记录: |