【问题标题】:SQL query using if else使用 if else 的 SQL 查询
【发布时间】:2018-07-11 19:52:00
【问题描述】:

我的 SQL 代码如下所示:

SELECT 
    Scores.PupilId, Scores.BoysName, Scores.FormGroup,
    IF (Scores.FormGroup = "10SB", "Great", "ok")
FROM 
    Scores

我收到这条消息

没有这样的功能:如果:SELECT Scores.PupilId, Scores.BoysName, Scores.FormGroup,
if(Scores.FormGroup="10SB","Great","ok")
来自分数

这是平面文件数据库

谁能帮我理解为什么我会收到一条消息?

【问题讨论】:

标签: sql if-statement using


【解决方案1】:

SQL 中正确的 ANSI 标准条件表达式是 case 表达式:

SELECT Scores.PupilId, Scores.BoysName, Scores.FormGroup,  
       (CASE WHEN Scores.FormGroup = '10SB' THEN 'Great' ELSE 'ok' END)
FROM Scores ;

【讨论】:

  • 是的。 MS SQL 2012 添加了一个IIF() 条件函数,但我相信它本质上评估为CASE 语句。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-22
  • 2023-04-02
  • 2021-05-01
  • 2015-05-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多