sql - 如何根据条件从选择查询中选择想要的列
问题描述
我有选择查询,它返回 id ,name ,description ,price
我试图根据条件单独获取 ID,价格,它应该显示名称,描述
@show =1
select id ,name,if @show = 1 begin name ,description, end ,price from tbl
谢谢
解决方案
您的所有回答对我帮助很大,谢谢。最后我去了这个方法适用于字符串连接字段是 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 价格
谢谢
推荐阅读
- php - 在购物车和结帐时显示篮子中的物品总数,以及电子邮件订单收据
- php - 使用php将特殊字符传递给mysql数据库
- java - Java:如何以区域设置敏感的方式显示工作日、月份和日期以及无年份
- c++ - 函数不返回多个文件?
- python - 重新缩放不工作 Keras
- c++ - 为什么解锁 unique_lock 会导致我的程序崩溃?
- javascript - Javascript-回调方法退出后DOM元素恢复初始值
- ios - swift JSONEncoder 设置元素顺序
- ruby-on-rails - Rails CSRF 过期时间
- html - Inline-Level Boxes 和 Inline Boxes (W3C) 定义中的矛盾