当前位置: 首页 > 面试题库 >

为什么包含空值的多列的SQL Sum返回错误的结果?

饶谦
2023-03-14
问题内容

该表包含以下值:

Column1  Column2
1        NULL
NULL     4
2        NULL
NULL     5
3        6

以下查询:

SELECT 
    SUM([Column1] + [Column2] ) 
FROM [myTable]

返回9应该返回的时间值21。为什么?它如何实现价值?

我知道可以通过添加SUM来纠正SUM ISNULL

SELECT 
    SUM(ISNULL([Column1], 0) + ISNULL([Column2], 0)) 
FROM [myTable]

但我想知道价值背后的逻辑 9


问题答案:

null确切地说,和是多少?请注意9来源:唯一具有非nullColumn1和的行Column2

(应OP的要求复制)



 类似资料:
  • 问题内容: 例如,我的查询类似于使用SQL Server 2005的以下查询: 我定义了全文索引以使用列SearchField,该列在使用时返回结果: 我相信#是一个特殊的字母,那么如何让FREETEXT对于以上查询正常工作? 问题答案: #char被索引为标点符号,因此被忽略,因此看起来我们将从单词索引忽略列表中删除了字母C。 完成此操作并重建索引后,在本地对其进行了测试,我得到了结果! 考虑在

  • 调用以下命令时,GHCI返回一个错误:由于使用“print”而产生的不明确类型变量“f0”、“b0”会阻止约束(Show(f0 b0))得到解决。 据我所知,这是因为我的表达式的类型是(数字b,函数f)= 然而,List的Functor实例将fmap定义为map,并且map的定义忽略了函数参数,以防第二个参数是[],从而简单地返回[]。这应该意味着我的表达式应该简单地返回[],而不管我应用了多少f

  • 问题内容: 我有一堆应聘者,他们有一些或多个工作,每个人都在公司工作,并且使用了一些技能。 坏的ascii艺术如下: 这是我的数据库: 。 。 。 。 这是我对查询的尝试(请注意,我打算将通配符更改为字段名称;我只是想使某些功能生效): HediSql说 查询出了什么问题?我希望从不良的ascii艺术中可以清楚地知道我要达到的目标。 (此外,它对我连接表的顺序是否有任何速度差异?我将担心新的MyS

  • 这是我第一次使用JPA。我找不到错误。

  • (免责声明:人们通过facebook、firebase等请求询问使用异步操作时数据为空/不正确时,会产生很多问题。我提出这个问题的目的是为每个从android异步操作开始的人提供一个简单的答案。) 我试图从我的一个操作中获取数据,当我使用断点或日志调试它时,值就在那里,但当我运行它时,它们总是空的,我该如何解决这个问题呢? 火力基地 脸书 等。

  • 问题内容: 在Web Api中返回任何结果之前,我禁用了EF5中的延迟加载和代理创建。一切正常。但是,当我开始尝试获取其他实体时,一些JSON对象如下所示: 这是什么这是包含在结果列表中? 问题答案: 它来自JSON.NET序列化器。它保留对象引用。看一下。我猜想您的对象图中有一些循环引用,并且JSON.NET最好是在不崩溃的情况下不遗余力地序列化此EF结构(这是大多数JSON序列化程序将要做的事