首页 > 解决方案 > 如何根据条件从选择查询中选择想要的列

问题描述

我有选择查询,它返回 id ,name ,description ,price

我试图根据条件单独获取 ID,价格,它应该显示名称,描述

@show =1   
select id ,name,if @show = 1 begin name ,description, end ,price from tbl

谢谢

标签: sqlsql-servertsql

解决方案


您的所有回答对我帮助很大,谢谢。最后我去了这个方法适用于字符串连接字段是 id,name,description,price

声明@id int;
声明 @sqlcommand nvarchar(max) ;
声明 @visible int ;
set @sqlcommand = 'select id ,'+case when @visible = 1 then 'name ,description' else '' end +',price from tbl where id = @id'

执行 sp_executesql @sqlCommand ,N'@id int',@id=@id

如果我通过 visible = 1 结果将是 id name desc price

可见 = 0 id 价格

谢谢


推荐阅读