【发布时间】:2012-01-17 21:01:22
【问题描述】:
我有一个有几列的表。一列的值为0 或1。我想编写一个查询,如果值为0,则返回“Hello”,如果值为1,则返回“Bye”。
编写此查询的适当方式是什么?
【问题讨论】:
标签: sql sql-server select if-statement case-statement
我有一个有几列的表。一列的值为0 或1。我想编写一个查询,如果值为0,则返回“Hello”,如果值为1,则返回“Bye”。
编写此查询的适当方式是什么?
【问题讨论】:
标签: sql sql-server select if-statement case-statement
如果您选择多列/所有列,请尝试以下操作:
SELECT Column1, Column2, -- Put other column name here
CASE TargetColumnName
WHEN 0 THEN 'Hello'
WHEN 1 THEN 'Bye'
END AS TargetAliasColumnName
FROM YourTableName
【讨论】:
SELECT 语句中选择多列,并且可以在CASE 语句中使用一列(在我的回答中),在马丁史密斯的回答中,他使用了SELECT 中的一列并使用了CASE 声明中该列的值 - 希望你明白我的意思,谢谢。
SELECT CASE YourCol
WHEN 0 THEN 'Hello'
WHEN 1 THEN 'Bye'
END AS SomeAlias
FROM YourTable
【讨论】: