【问题标题】:Sql select from row sum to columnSql从行总和到列选择
【发布时间】:2020-08-01 13:35:10
【问题描述】:
------------------------------------------------------------------
 Itemcode | DocType  |  Qty     |
------------------------------------------------------------------
100011    | FA       | 100      |
100011    | FA       |  50      |
100011    | AJN      |  10      |
100011    | FA       | 100      |
100011    | AJN      | 50       |
-----------------------------------------------------------------

需要结果

------------------------------------------------------------------
 Itemcode | FA       | AJN  |
------------------------------------------------------------------
100011    | 250      |   0      |
100011    | 0        |  60      |
-----------------------------------------------------------------

【问题讨论】:

  • 如果您的问题是“如何使用 Select 根据 DocType 列对 Qty 求和?” - 应该出现在您的标题和问题正文中

标签: sql select sum


【解决方案1】:

试试这个,这里是demo

select
    Itemcode,
    sum(case when DocType = 'FA' then Qty end) as FA,
    sum(case when DocType = 'AJN' then Qty end) as AJN,
from yourTable
group by
    Itemcode

【讨论】:

  • Artigo FA AJN 100011 NULL NULL 100012 NULL NULL 100013 NULL NULL
  • 两个字段都返回null
  • @infotech.ang 这里是示例sqlfiddle.com/#!9/81b4a7/3。您可以检查Qty 字段的数据类型。
  • [Quantidade] 十进制(28,10)
  • 我提供了一个例子,不知道你运行的是哪个SQL引擎。
猜你喜欢
  • 2012-08-09
  • 2023-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-08
  • 2023-02-09
  • 2019-07-02
  • 1970-01-01
相关资源
最近更新 更多