SQL SELECT If(a ="")然后改变b值

Tyl*_*sen 7 sql sql-server if-statement

这似乎是一个简单的问题,但我找不到答案.我基本上是想这样做:

SELECT * FROM table1
IF(columnA > 0) BEGIN
columnB = 'Greater than 0'
END
Run Code Online (Sandbox Code Playgroud)

我不希望表中的值发生变化,我只是希望它在结果中改变.有什么建议?

Kev*_*cki 24

SELECT  ColumnA
        , case when ColumnA > 0 then 'Greater than 0' else ColumnB END AS ColumnB 
FROM    table1;
Run Code Online (Sandbox Code Playgroud)


Ted*_*opp 6

这应该工作:

SELECT columnA, IIF(columnA > 0, 'Greater than 0', columnB)
  FROM table1;
Run Code Online (Sandbox Code Playgroud)

  • @TedHopp np.在这个'案例'中我更喜欢'IIF`(双关语) (3认同)