sql-server - 帮助使用 case 和 group 进行 sql 查询

标签 sql-server group-by case

我有一个数据库表,其中包含日期和名为 posneg 的字段,该值是“pos”、“neu”或“neg”。

我需要一个结果集,其中添加 posneg 值,然后按日期分组。像这样

2010-10-03    5   (on that date it could be 12 pos, 5 neu and 7 neg)
2010-10-04    -3  (on that date maybe 10 pos, 2 neu and 13 neg)
...and so on

正如您所见,基本上 neu 并不重要。

最佳答案

SELECT
  date,
  posneg = SUM(
    CASE posneg
      WHEN 'pos' THEN 1
      WHEN 'neg' THEN -1
      ELSE 0
    END
  )
FROM atable
GROUP BY date

关于sql-server - 帮助使用 case 和 group 进行 sql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5752985/

相关文章:

sql - 如何根据其他值的组合来编写值

sql-server - 报告服务 (ssrs) 提示输入用户名/密码

sql-server - Unix ODBC Connect 2016 MS SQL Server sql 状态 28000 native 错误 18456

SQL按类别求和和按月/年分组

python - 根据条件分组和子集行

postgresql - 如何在 BETWEEN 子句中插入 AVG?

asp.net - 使用 AddWithValue 插入 - 抛出错误?

python - 应用函数来操作 Python Pandas DataFrame 组

sql - 如何组合 Snowsql GroupBy 中的数组并仅保留不同的值?

Clojure `case` 不区分不同的符号