小编Dan*_*eih的帖子

SUM(Amount) 不同的值,然后是行的总和 - SQL Server 2017 (14.0.3045.24)

我正在使用以下查询来获取过滤器中所有行的字段数量的总和:

SELECT SUM(Amount)
FROM dbo.[CompanyName$Detailed Cust_ Ledg_ Entry]
WHERE [Customer No_] = 'XYZ'
Run Code Online (Sandbox Code Playgroud)

结果是

结果

这个结果不等于行的总和

SELECT [Customer No_], Amount
FROM dbo.[CompanyName$Detailed Cust_ Ledg_ Entry]
WHERE [Customer No_] = 'XYZ'
Run Code Online (Sandbox Code Playgroud)

行的结果是:

行结果

计算行的等位基因数量时,结果为:-29,59 而不是 -59,18

有人可以解释这种行为吗?

SP_Helpindex 输出: SP_Helpindex 输出

查询计划: 查询计划

XML 查询计划

<?xml version="1.0" encoding="utf-16"?>
<ShowPlanXML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="1.481" Build="14.0.3045.24" xmlns="http://schemas.microsoft.com/sqlserver/2004/07/showplan">
  <BatchSequence>
    <Batch>
      <Statements>
        <StmtSimple StatementCompId="1" StatementEstRows="9.00002" StatementId="2" StatementOptmLevel="FULL" StatementOptmEarlyAbortReason="GoodEnoughPlanFound" CardinalityEstimationModelVersion="140" StatementSubTreeCost="0.029753" StatementText="SELECT 'XYZ' [Customer No_],[Amount] FROM [dbo].[CompanyName$Detailed Cust_ Ledg_ Entry] WHERE [Customer No_]=@1" StatementType="SELECT" QueryHash="0x97A8CCC9F15EC998" QueryPlanHash="0x7502550BCACA55B0" RetrievedFromCache="false" SecurityPolicyApplied="false">
          <StatementSetOptions …
Run Code Online (Sandbox Code Playgroud)

sql-server sum sql-server-2017

5
推荐指数
1
解决办法
109
查看次数

标签 统计

sql-server ×1

sql-server-2017 ×1

sum ×1