If statement SQL Server Express IF语句

If statement SQL Server Express IF语句,if-statement,sql-server-express,If Statement,Sql Server Express,我只想问一下,在SQL Server 2014 Express中使用IF语句的正确方法是什么?我有这个代码,但运气不好,它不工作 select field1, field2, field3, field4, if(field5 = 'value1', field5, if(field5 = 'value2', field5, if(field5 = 'value3', field5, if(field5 = 'value4', f

我只想问一下,在SQL Server 2014 Express中使用
IF
语句的正确方法是什么?我有这个代码,但运气不好,它不工作

select 
    field1,
    field2,
    field3,
    field4,
    if(field5 = 'value1', field5,
    if(field5 = 'value2', field5,
    if(field5 = 'value3', field5,
    if(field5 = 'value4', field5, field6)))) 
from 
    table1

任何帮助都将不胜感激。提前感谢。

如果
的标准
SQL
语法是,例如:

SELECT field1,
  CASE field5 
    WHEN 'value1' THEN field5 
    WHEN 'value2' THEN field4
    ELSE field3
  END
FROM table1


ELSE
部分是可选的。

似乎您需要函数,而不是
if
语句。感谢@Kokizzu和simo.379209的即时响应,您的建议都有效。谢谢!抱歉,删除了我的评论,因为我认为我对它进行了语法分析。不管怎样,现在我更自信了@Cleyventh有4个字段,所有字段都返回字段5,因此当字段5位于('value1','value2','value3','value4')中时,您可以使用
CASE,然后字段5 ELSE field6 END
@simo.379209在语句可以嵌套时使用CASE。例如,CASE-WHEN语句中的CASE-WHEN。谢谢
SELECT field1,
  CASE WHEN field5='value1' THEN field5 ELSE field4 END
FROM table1