sql-server – SQL Server CASE语句是否评估所有条件或在第一个T
发布时间:2021-05-15 23:16:42 所属栏目:MsSql教程 来源:网络整理
导读:SQL Server(2008或2012,特别是)CASE语句是否评估了所有WHEN条件,或者一旦找到评估为true的WHEN子句就退出?如果它确实经历了整个条件集,那是否意味着评估为true的最后一个条件会覆盖评估为true的第一个条件?例如: SELECT CASE WHEN 1+1 = 2 THEN'YES' WH
SQL Server(2008或2012,特别是)CASE语句是否评估了所有WHEN条件,或者一旦找到评估为true的WHEN子句就退出?如果它确实经历了整个条件集,那是否意味着评估为true的最后一个条件会覆盖评估为true的第一个条件?例如: SELECT CASE WHEN 1+1 = 2 THEN'YES' WHEN 1+1 = 3 THEN 'NO' WHEN 1+1 = 2 THEN 'NO' END 结果为“是”,即使最后一个条件应该使其评估为“否”.它似乎一旦找到第一个TRUE条件就会退出.有人可以确认是否是这种情况. 解决方法?返回计算结果为TRUE的第一个input_expression = when_expression的result_expression.参考 这是标准的SQL行为: > CASE表达式求值为第一个真实条件.>如果没有真实条件,则评估为ELSE部分.>如果没有真实条件且没有ELSE部分,则计算结果为NULL. (编辑:应用网_丽江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- SQL Server和Oracle的EF和TransactionScope没有升
- HTML教程:收集的常用的HTML标签(4)
- 如何利用SQL Server With As递归获取层级关系数据
- Borland推支持微软.NET框架的Delphi 8平台
- 使用Sybase SQL Anywhere拆分/爆炸逗号分隔的字符
- sql – 如何在(select)语句中最好地组织内部联接
- SQL Server 2008 RC0安装过程三:安装配置
- 远古(WebTV)直播广域网多用户并发性能测试
- sql-server – 实体框架缓存查询计划性能随着不同
- HTML iframe和frameset的区别_动力节点Java学院整
热点阅读