语法:使用case或if-then-else进行t-SQL别名设置?

时间:2016-04-22 14:12:16

标签: sql-server list if-statement case alias

我正在使用t-SQL进行报告,并对语法有疑问。我刚开始学习一些更中级的SQL内容,比如连接,别名,case语句,order by等。

我有一张桌子需要从中提取人员数据。在提取数据时,我需要拉动每个相关人员,并根据属性对人员列表进行排序。然后我想将人员数据存储在两个变量(别名)中。一个人具有属性“申请人”,他们的信息应该别名并与其他人分开存储。其他人应该存储在一个列表中。有没有一种在SQL中执行此操作的好方法?这是我在伪代码中的想法

select * from persontable
if persontable.TYPE = 'Applicant' then persontable.name as applName, persontable.otherAtt as applOtherAtt --etc
else persontable.name --add to a list and alias as otherNames

或类似的东西

case when persontable.TYPE = 'Applicant'then persontable.name as applName, persontable.otherAtt as applOtherAtt --etc
else persontable.name --add to a list and alias as otherNames

1 个答案:

答案 0 :(得分:0)

标记为已回答,查找变量和别名之间的差异,并提供了一些指向if-then-else逻辑的链接。