首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么这个CASE语句给出的是NULLS,而不是其中的ELSE条件?

CASE语句给出的是NULLS而不是ELSE条件的原因可能有以下几种情况:

  1. CASE语句中的条件判断没有匹配到任何一个条件,包括ELSE条件。这种情况下,CASE语句会返回NULLS作为默认值。
  2. CASE语句中的条件判断匹配到了一个条件,但该条件的结果是NULL。在这种情况下,CASE语句会返回NULLS作为结果。
  3. CASE语句中的条件判断匹配到了一个条件,但该条件的结果是一个NULL值,而不是一个具体的值。在这种情况下,CASE语句会返回NULLS作为结果。

需要注意的是,NULLS并不是一个具体的值,而是表示缺失或未知的状态。在某些情况下,NULLS可能会被视为一种特殊的结果,例如在某些数据库中,对于包含NULLS的计算结果,可能会返回NULLS而不是具体的计算结果。

对于这个CASE语句给出NULLS而不是ELSE条件的具体原因,需要根据具体的上下文和数据来分析。如果提供更多的信息,我可以给出更准确的答案。

相关搜索:为什么这个返回的是[],而不是["stuff"]?对于这个if/else语句,JavaScript条件运算符是更好的方法吗?为什么我的if else语句没有显示其中一个条件的结果?为什么这个JS函数返回的是数字的升序而不是降序?为什么这个c代码的结果是"days: 33“而不是"days: 30"?为什么这个程序返回的是最后一个单词而不是最长的单词?我有两段xquery代码,其中1给出了正确的结果,而2不是。为什么?为什么这个typescript函数假定im传递的是字符串而不是数字为什么这个码的时间复杂度是O(n)而不是O(log )为什么我的代码一直重复问题提示,而不是继续执行条件语句?SQL首先检查列名,而不是条件,并给出一个错误:无效的列名。如何解决这个问题?为什么这个指针在计算sum时传递的是一个值而不是地址?为什么我得到的是这个而不是一个字符串?为什么在数组的这种线性搜索的while循环条件中,!found而不是found是必需的?"ValueError:'‘不在列表中“是作为一个错误给出的,而不是仅仅在elif语句中继续为什么这个`ctyes`封装函数的返回值是`c_long(0)`而不是ctyes`(3)`?为什么在这个类中,循环返回的索引是0,而不是0,1,2,3...etc?为什么这个pandas df.loc()调用只选择满足一个条件而不是两个条件的所有记录?如果这里的输出是“不相等的”,那么为什么用double而不是float不能给出相同的输出呢?当“猜测”数字是随机生成的,而不是基于上下限的平均值时,为什么这个程序可以工作?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Oracle查询优化-02给查询结果排序

默认情况下 升序排列,因此asc是可选的, 降序排列使用desc. . 不一定要指定排序所基于的列名,也可以给出这列的编号, 编号从1开始。...在order by中,优先顺序是从左到右。 如果在select列表中使用的数字位置排序,那么这个数值不能大于select列表中项目的数目。...解决方案 oracle9i以后 可以使用关键字 nulls first 和 nulls last 来确保null是首先排序还是最后排序,而不必考虑非空值的排序方式。...first 和 nulls last 来确保null是首先排序还是最后排序,而不必考虑非空值的排序方式。...---- 2.7 根据条件取不同列中的值来排序 问题 要根据某些条件逻辑来排序,比如 job是saleman的要根据comm排序,否则按照sal排序,降序排列 解决方案 在order by 子句中使用

1.2K20

PostgreSQL的B-tree索引

为什么有这样的需求?这样做是为了多列索引。...NULLs PostgreSQL的B-tree支持在NULLs上创建索引,可以通过IS NULL或者IS NOT NULL的条件进行查询。...如果查询中包含排序,这就显得很重要了:如果SELECT语句在ORDER BY子句中指定NULLs的顺序索引构建的顺序一样(NULLS FIRST或NULLS LAST),就可以使用整个索引。...-------------------- Index Scan using flights_nulls_first_idx on flights (1 row) 像这样的问题是由NULLs引起的而不是无法排序...由于NULLs可以被索引,因此即使表上没有任何标记也可以使用索引。(因为这个索引包含表航记录的所有信息)。如果查询需要排序的数据,而且索引确保了所需的顺序,那么这可能是由意义的。

4.6K20
  • 笔记:如何使用postgresql做顺序扣减库存

    如何使用postgresql做顺序扣减库存 Ⅰ.废话在前面 首先这篇笔记源自于最近的一次需求,这个临时性需求是根据两份数据(库存数据以及出库数据) 算出实际库存给到业务,至于库存为什么不等于剩余库存...(当然可以确定是我自跟儿写的),而整个过程几乎就是走一步看一步的解决问题的过程,掉了多少头发可想而知了。。。...,以上是可以略去sum聚合这个操作的,因为两张表是按产品代码做关联的(很显然),另外就是日期是可以降序排列的,但是在日期有null值的情况下null所在的记录默认是降序排在最后的,所以要 order by...让我想想 觉得还是先回顾下需求吧,我们的需求是每个产品下每一个批次顺序扣减的最终结果(还有批次扣减的数),其中扣减数量应该就是=当前批次(库存)数量-出库数量,公式是确定的,看起来似乎简单,然而难点是如何算出这个...好了,这又是一个难点,继续思考下,目前我们是不是没法做(至少是没法简单的)获取到 库存数量-出库数量;幸运的是。。。

    1.2K20

    【Java 进阶篇】使用 SQL 进行排序查询

    排序是通过 ORDER BY 子句完成的,它通常紧随在 SELECT 语句的后面。ORDER BY 子句允许我们指定一个或多个列,以便按照这些列的值来排序结果集。...这样,我们可以获得更详细的排序结果。 自定义排序顺序 有时,我们可能需要按照自定义的排序顺序对数据进行排序,而不仅仅是字母顺序或数字顺序。SQL 允许我们使用 CASE 表达式来定义自定义排序规则。...假设我们有一个 products 表,其中包含产品名称和产品重要性。我们希望按照自定义的重要性顺序进行排序,而不是按照字母顺序。...'Medium' THEN 2 WHEN 'Low' THEN 3 ELSE 4 END; 在上面的查询中,我们使用了 CASE 表达式来定义排序规则。...以下是一个示例: SELECT * FROM employees ORDER BY last_name ASC NULLS LAST, first_name ASC NULLS LAST

    39520

    《SQL Cookbook》 - 第二章 查询结果排序

    默认情况下,ORDER BY会做升序排列,因此ASC子句是可选的。可以通过DESC执行降序排列。可以再ORDER BY子句中列出不同的排序列,逗号分隔。...一般而言,可以根据一个没有被包含在SELECT列中的列来排序,但是必须明确地指定列名。但是当查询语句中含有GROUP BY或者DISTINCT,那么不能按照SELECT列表之外的列进行排序。..., comm from ( select ename, sal, comm, case when comm is null then 0 else 1 end as is_null...依据条件逻辑动态调整排序项 例如,如果job等于salesman,就需要按照comm排序,否则,就按照sal排序,此时用到case...when...子句, select ename, sal, job..., comm from emp order by case when job='SALESMAN' then comm else sal end; 或者, select ename, sal,

    1K10

    微信为什么使用 SQLite 保存聊天记录?

    长话短说,可以使用is not false判断来替代这个or…is-null的语句。...nulls语句 7:nulls的特定处理:first_value(, 1, null, 'IGNORE NULLS') ,这里是字符串参数。...此示例很好地总结了filter子句的作用:它是聚合函数的后缀,可以在进行聚合之前根据特定条件,过滤掉相应的行。pivot技术是filter子句最常见的用例。...不幸的是,这意味着您仍然无法在SQLite中使用filter语句来处理上述情况。你必须像以前一样使用case表达式。我真的希望SQLite在这一点上能尽快做到。...这是一个特有的SQL扩展,即它不是标准SQL的一部分,因此在下面的矩阵中是灰色的。但是,SQLite遵守与PostgreSQL相同的语法来实现此功能0。该标准提供了对merge语句的支持。

    2.6K20

    Oracle优化器之动态统计(Dynamic Statistics)

    概述 为了解决因为统计信息缺失或者统计不够准确而引起的问题,从9iR2的版本开始Oracle推出了动态采样(Dynamic Sampling)功能,使SQL文在硬解析过程中动态地收集统计信息。...关于动态统计(DS )的几个问题: 1.什么是动态统计(Dynamic Statistics)或者动态采样(Dynamic Sampling)? 2.为什么要使用动态统计?...为什么要使用动态统计? 如同前面叙述的,如果由于选择执行计划的Object统计信息缺失、过期或者不足时,CBO优化器选择的执行计划就有可能不是最优的甚至是最差的。...关于OPTIMIZERDYNAMICSAMPLING的值(同级别)和动态统计启用的条件可以参考下表: ?...※其中样本大小的数据块数可以由隐含参数optimizerdynsmpblks来控制(默认值为32)。 如何确认采用了动态统计功能?

    1.3K20

    微信为什么使用 SQLite 保存聊天记录?

    长话短说,可以使用is not false判断来替代这个or…is-null的语句。...nulls语句 7:nulls的特定处理:first_value(, 1, null, 'IGNORE NULLS') ,这里是字符串参数。...此示例很好地总结了filter子句的作用:它是聚合函数的后缀,可以在进行聚合之前根据特定条件,过滤掉相应的行。pivot技术是filter子句最常见的用例。...不幸的是,这意味着您仍然无法在SQLite中使用filter语句来处理上述情况。你必须像以前一样使用case表达式。我真的希望SQLite在这一点上能尽快做到。...如果你看好一个事情,一定是坚持了才能看到希望,而不是看到希望才去坚持。相信我,只要坚持下来,你一定比现在更好!如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯,帮你积累弯道超车的资本。

    1.9K10

    微信为什么使用 SQLite 保存聊天记录?

    长话短说,可以使用is not false判断来替代这个or…is-null的语句。...nulls语句 7:nulls的特定处理:first_value(, 1, null, 'IGNORE NULLS') ,这里是字符串参数。...此示例很好地总结了filter子句的作用:它是聚合函数的后缀,可以在进行聚合之前根据特定条件,过滤掉相应的行。pivot技术是filter子句最常见的用例。...不幸的是,这意味着您仍然无法在SQLite中使用filter语句来处理上述情况。你必须像以前一样使用case表达式。我真的希望SQLite在这一点上能尽快做到。...这是一个特有的SQL扩展,即它不是标准SQL的一部分,因此在下面的矩阵中是灰色的。但是,SQLite遵守与PostgreSQL相同的语法来实现此功能0。该标准提供了对merge语句的支持。

    2.2K10

    微信为什么使用 SQLite 保存聊天记录?

    长话短说,可以使用is not false判断来替代这个or…is-null的语句。...nulls语句 7:nulls的特定处理:first_value(, 1, null, 'IGNORE NULLS') ,这里是字符串参数。...此示例很好地总结了filter子句的作用:它是聚合函数的后缀,可以在进行聚合之前根据特定条件,过滤掉相应的行。pivot技术是filter子句最常见的用例。...不幸的是,这意味着您仍然无法在SQLite中使用filter语句来处理上述情况。你必须像以前一样使用case表达式。我真的希望SQLite在这一点上能尽快做到。...这是一个特有的SQL扩展,即它不是标准SQL的一部分,因此在下面的矩阵中是灰色的。但是,SQLite遵守与PostgreSQL相同的语法来实现此功能0。该标准提供了对merge语句的支持。

    10610

    DataFrame的真正含义正在被杀死,什么才是真正的DataFrame?

    本篇文章会大致分三部分: 什么是真正的 DataFrame? 为什么现在的所谓 DataFrame 系统,典型的如 Spark DataFrame,有可能正在杀死 DataFrame 的原本含义。...从 Mars DataFrame 的角度来看这个问题。 什么是真正的 DataFrame?...这些 “DataFrame” 系统的出现,让 “DataFrame” 这个词本身几乎变得没有意义。数据科学家们为了处理大规模的数据,思维方式不得不作出改变,这其中必然存在风险。...Spark DataFrame 和 Koalas 不是真正的 DataFrame 这些 DataFrame 系统的代表是 Spark DataFrame, Spark 当然是伟大的,它解决了数据规模的问题...这个库是我们前几年的产品,PyODPS 里也包含一个 DataFrame,而 PyODPS DataFrame 在执行的时候会被编译到 ODPS SQL 来执行。

    2.5K30

    【C语言】判断语句以及分支语句《详细讲解》

    这显然不是我们想要的结果,我们希望只执行第四个分支,而跳过后面的其他分支。...[switch] 语句检验条件必须是整形表达式,这意味其中也可以包含运算符和函数调用,而[case] 语句检验的值必须是整形常量,即常量表达式或者常量运算 在使用 [switch] 语句时,如果没有一个...其中,任意两个 [case] 语句都不能有相同的常量值;每个[swtich]语句结构都只有一个[default]语句,[default]语句是可以省略的 在 [case] 语句表示条件后有一个冒号":...[switch] 语句检验条件必须是整形表达式,这意味其中也可以包含运算符和函数调用,而[case] 语句检验的值必须是整形常量,即常量表达式或者常量运算 在使用 [switch] 语句时,如果没有一个...[switch] 语句检验条件必须是整形表达式,这意味其中也可以包含运算符和函数调用,而[case] 语句检验的值必须是整形常量,即常量表达式或者常量运算 在使用 [switch] 语句时,如果没有一个

    72120

    Oracle数据库之第一篇

    由于oracle 的数据库不是普通的概念,oracle 是有用户和表空间对 数据进行管理和存放的。但是表不是有表空间去查询的,而是由用户 去查的。...的雇员, 姓名是:smith,工作是:clerk 字符串的连接使用‘||’ 四、条件查询和排序  使用where 语句对结果进行过滤  比较运算符 11  其他比较运算符...在SQL 语句中使用IF-THEN-ELSE  实现的方式: CASE 表达式:SQL99 的语法,类似Basic,比较繁琐 DECODE 函数:Oracle 自己的语法,类似Java,比较简介... CASE 表达式  DECODE 函数  条件表达式示例: 根据10 号部门员工的工资,显示税率 六、多行函数  什么是多行函数?...处理语句 else 是所有sql数据库都支持的 case 判断列 when 列值 then 显示值 when 列值 then

    3.4K10

    盘点数据库中的一些坑(一)

    从数据库设计层面思考 我们从设计的层面进行思考为什么会出现这样的情况,下面是结合知乎给出的答案经过个人总结之后来了解为什么数据库会出现这么多令人烦恼的问题: 多数程序员的认知里面包括编程语言的认知都是...但是数据库是「只返回查询结果为“true”的结果」的,对于false的内容和“「unknown」 ”是不认识的。 这里读者可能又有疑问了,为什么case when出来的结果是空?...=代表等值,假设数据库是一个货架,你可以问货架上的一个格子里装的是1吗(是否=1)?然后传回一个值,这个格子里是1或者不是1。你也可以问格子里装的是0吗?然后返回一个值,是0或者不是0。...(是否 is null)」 』所以永远都应该使用 is null 而不是=null。 通常情况下数据库建表的时候默认是 NULL,但在工作中一般建表的时候都会禁止使用 NULL 的!...exists的用法 exists 返回的结果是一个 boolean 值 true 或者 false ,而不是某个结果集,exists 对外表用 loop 逐条查询,每次查询都会查看 exists 的条件语句

    38620

    计算机程序的思维逻辑 (9) - 条件执行的本质

    if/else if实现的是条件满足的时候做什么操作,如果需要根据条件做分支,即满足的时候执行某种逻辑,而不满足的时候执行另一种逻辑,则可以用if/else。...,最后如果没有条件满足,且有else语句,则执行else里面的代码。最后的else语句不是必须的,没有就什么都不执行。...每条case语句后面都应该跟break语句,否则的话它会继续执行后面case中的代码直到碰到break语句或switch结束,例如:下面的代码会输出所有数字而不只是1....从逻辑上讲,if/else, if/else if/else,三元运算符,switch都可以只用if代替,但使用不同的语法表达更简洁,在条件比较多的时候,switch从性能上也更高(马上解释为什么)。...总结 条件执行的语法是比较自然和容易理解的,需要注意的是其中的一些语法细节和陷阱。它执行的本质依赖于条件跳转、无条件跳转和跳转表。

    1.2K100
    领券