【问题标题】:How to pull records based on count comparison of value in a column如何根据列中值的计数比较来提取记录
【发布时间】:2014-06-09 19:34:05
【问题描述】:

请原谅标题,但我不知道该写什么。所以这就是我所拥有的 -

CUSTOMER (KEY, IDENT, DEBIT_CREDIT)

1,1000,'D'
2,1000,'C'
3,1001,'D'
4,1000,'D'
5,1000,'D'
.
.
.

我想编写一个 SQL Server 查询来提取相同的 IDENT,其中“D”的计数大于“C”的计数

【问题讨论】:

    标签: sql sql-server count where


    【解决方案1】:

    第一:

    SELECT IDENT
    FROM CUSTOMER
    GROUP BY IDENT
    HAVING  SUM(CASE WHEN DEBIT_CREDIT = 'D' THEN 1 ELSE 0 END) >
            SUM(CASE WHEN DEBIT_CREDIT = 'C' THEN 1 ELSE 0 END)
    

    第二:

    SELECT IDENT
    FROM CUSTOMER
    GROUP BY IDENT
    HAVING  SUM(CASE WHEN DEBIT_CREDIT = 'D' THEN 1 ELSE 0 END) =
            SUM(CASE WHEN DEBIT_CREDIT = 'C' THEN 1 ELSE 0 END)
    

    【讨论】:

      猜你喜欢
      • 2023-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多