多个标准SQL IIF
给我 但我正在努力实现多个标准SQL IIF,sql,sql-server,Sql,Sql Server,给我 但我正在努力实现 | Studentnr | Result | Passed | |-----------|---------|-------------------| | 101 | 6.5 | Yes | 有没有办法用IIF做到这一点?不确定IIF是什么,但您可以使用案例来实现同样的效果 | Studentnr | Result | Passed | |-----------|------
| Studentnr | Result | Passed |
|-----------|---------|-------------------|
| 101 | 6.5 | Yes |
有没有办法用IIF做到这一点?不确定IIF是什么,但您可以使用案例来实现同样的效果
| Studentnr | Result | Passed |
|-----------|---------|-------------------|
| 101 | 6.5 | Yes lower than 7 |
| 102 | 8 | Yes higher than 7 |
| 103 | 4.5 | No |
不确定IIF是什么,但您可以使用case实现同样的功能
| Studentnr | Result | Passed |
|-----------|---------|-------------------|
| 101 | 6.5 | Yes lower than 7 |
| 102 | 8 | Yes higher than 7 |
| 103 | 4.5 | No |
可以使用case语句返回单个列
select studentnr, result,
case when result>= 5.5 then 'Yes'
else 'No'
end as passed,
case when result>= 7 then 'Higher than 7'
else 'Lower than 7'
end as gt_lt_7
from grade
可以使用case语句返回单个列
select studentnr, result,
case when result>= 5.5 then 'Yes'
else 'No'
end as passed,
case when result>= 7 then 'Higher than 7'
else 'Lower than 7'
end as gt_lt_7
from grade
这可以使用嵌套的IIF语句实现
SELECT IIF(a.results > 5.5,
--Another IIF if it's higher than 5.5
IIF(a.results <= 7, 'Yes lower than 7', 'Yes higher than 7'),
-- else no.
'No' ) AS Passed
FROM (
VALUES (4), (6), (8)
) AS a(results);
例如:
这可以使用嵌套的IIF语句实现
SELECT IIF(a.results > 5.5,
--Another IIF if it's higher than 5.5
IIF(a.results <= 7, 'Yes lower than 7', 'Yes higher than 7'),
-- else no.
'No' ) AS Passed
FROM (
VALUES (4), (6), (8)
) AS a(results);
例如:
SELECT IIF(a.results > 5.5,
--Another IIF if it's higher than 5.5
IIF(a.results <= 7, 'Yes lower than 7', 'Yes higher than 7'),
-- else no.
'No' ) AS Passed
FROM (
VALUES (4), (6), (8)
) AS a(results);
SELECT CASE WHEN a.results > 7 THEN 'Yes higher than 7'
WHEN a.results <= 7 AND a.results >= 5.5 THEN 'Yes lower than 7'
ELSE 'No'
END AS Passed
FROM (
VALUES (4), (6), (8)
) AS a(results);