如何选择查询基于列的值在SQL Server

如何选择查询基于列的值在SQL Server

问题描述:

表1获得列名: -如何选择查询基于列的值在SQL Server

ID NAME ADDRESS 
1 TEST1 qwr 
2 TEST2 sdf 

我希望根据ID列的值在选择查询获取列名

EX: - 在选择查询

如果ID = 1我想在选择查询 “名称”列在ID = 2我想“地址”栏

select name from table (when id=1) 
select address from table(when id=2) 

我希望我清楚地表达了我的疑问。

您可以使用子查询得到两个结果:

select (select name from table where id = 1) as name, 
     (select address from table where id = 2) as address; 

这个查询将返回一列结果,并多行:

SELECT CASE WHEN id = 1 THEN name WHEN id = 2 THEN address END AS result 
    FROM table;