我想获取一个Query来从表中选择一些行,但我想要显示的结果不是在行上而是在列上。
例如:
SELECT V.IDPARAMETER AS ID, V.VALUE AS VALUE
FROM AA_V_RESULTS V
WHERE V.ID = ?
此查询的结果是
ID VALUE
150 177
151 IN THE NORM
152 OK
现在我希望结果如下:
if(id = 150)
name of column is 'PARAMETER1'
else if(id = 151)
name of column is 'PARAMETER2'
else if(id = 152)
name of column is 'PARAMETER3'
所以查询的结果是
PARAMETER1 PARAMETER2 PARAMETER3
177 IN THE NORM OK
可以这样做吗?
答案 0 :(得分:1)
您可以使用CASE
表达式。
<强>查询强>
select
max(case [ID] when 150 then [VALUE] end) as [Parameter1],
max(case [ID] when 151 then [VALUE] end) as [Parameter2],
max(case [ID] when 152 then [VALUE] end) as [Parameter3]
from [your_table_name];