如何解决多个 CASE WHEN 场景如何在 SQL 中工作?
如果在查询中我们有两种情况满足条件,SQL 会选择哪一种来显示输出?
示例查询:
SELECT
CASE
WHEN field1 = 'a' THEN 1
WHEN field2 = 'a' THEN 2
ELSE 3
END
from table ;
解决方法
在 SQL 中,它们将按照编写顺序进行评估,因此第一场比赛获胜。
,只要条件在您的 case 条件中为真,它就会忽略所有后面的条件。
如果 field1='a' 那么即使 field2='a' 也会返回 1。但是如果 field1'a' 和 field2='a' 那么它会返回 2,并且只有当 field1 和 field2 都不是 'a' 那么它会返回 3。
我假设 field1 和 field2 是列名。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。