SQL-如何计算按另一列分组的不同列值

利拉奇F

我有以下问题-我有一个包含4列的表:Id,名称,InsertTime,UpdateTime。我想为每个名称计数(不是唯一的!)有多少个具有相同名称的名称具有不同的InsertTime或UpdateTime。例如,如果我有以下数据:

ID NAME  INSERTED_TIME  UPDATE_TIME
1  maya  21-12-2015     21-12-2015
2  tal   22-12-2015     21-12-2015
3  maya  21-09-2015     21-12-2015
4  mark  21-12-2015     21-12-2015
5  mark  21-12-2015     21-12-2015

我希望结果是:

NAME  COUNT
maya  1
tal   0
mark  0

外植体:“ maya”有1个重复项,具有不同的InsertTime或UpdateTime。“ tal”没有重复项。而且“标记”具有重复项,但是InsertTime和UpdateTime相同,因此不计在内。

我试过了:

SELECT COUNT(*)
FROM table t1
JOIN table t2 on t1.NAME=t2.NAME
where (t1.INSERTED_TIME<>t2.INSERTED_TIME or t1.UPDATE_TIME<>t2.UPDATE_TIME)

但这会返回重复项。我还使用GROUP BY尝试了不同的方法-到目前为止没有任何效果。

任何帮助,将不胜感激。

克劳森

使用GROUP BY并计算每个名称的行:

;WITH CTE as
(
  SELECT NAME
  FROM yourtable
  GROUP BY NAME, INSERTED_TIME, UPDATE_TIME
)
SELECT NAME, count(*) - 1 COUNT
FROM CTE
GROUP BY NAME

结果:

NAME    COUNT
mark    0
maya    1
tal     0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL GROUP BY一列的不同值

来自分类Dev

根据来自另一列的不同值对sql值求和,并将结果放入数组

来自分类Dev

如何仅按某一列值的前几个字母对SQL查询进行分组?

来自分类Dev

如何在同一SQL查询中将计算出的列值用于另一列

来自分类Dev

如何使用join和group by检索同一列的具有不同计算值的sql结果?

来自分类Dev

SQL视图基于另一列计算列

来自分类Dev

SQL Server:列的自动增量,按另一列中的值分区

来自分类Dev

Oracle Sql获取针对另一列的每个不同值显示最多的值

来自分类Dev

SQL-如何按标识列分组的一列的最大值排序?

来自分类Dev

oracle sql,id,按一列分组,多列在另一列中不同

来自分类Dev

Oracle SQL将sql行转换为按另一列分组的列

来自分类Dev

如何在SQL select语句中基于另一列添加计算列

来自分类Dev

SQL,按一列分组

来自分类Dev

SQL按列排序并同时按另一列分组

来自分类Dev

根据来自另一列的不同值对sql值求和,并将结果放入数组中

来自分类Dev

SQL按值对另一列进行排序

来自分类Dev

SQL Server查询以查找按一列分组但在其他至少一列中不同的值

来自分类Dev

SQL Server:列的自动增量,按另一列中的值分区

来自分类Dev

检索满足另一列中条件组合的一列中的所有不同值(SQL)

来自分类Dev

php,sql-如何更改一列的值并将其插入另一列

来自分类Dev

如何基于分组在一起的行向SQL表添加另一列

来自分类Dev

sql计算两个值从另一列共享相同值的次数

来自分类Dev

SQL CE:选择不同的,按另一列排序

来自分类Dev

SQL Server:根据一列分组并根据另一列获取列

来自分类Dev

SQL:为另一列选择不同的值

来自分类Dev

返回按一列排序并按另一列分组的 SQL 数据

来自分类Dev

SQL:如何根据SQL中另一列中的值范围对一列求和?

来自分类Dev

T-SQL 如何选择一列值的计数,而另一列的值相同

来自分类Dev

如何根据SQL中另一列的值过滤一列

Related 相关文章

  1. 1

    SQL GROUP BY一列的不同值

  2. 2

    根据来自另一列的不同值对sql值求和,并将结果放入数组

  3. 3

    如何仅按某一列值的前几个字母对SQL查询进行分组?

  4. 4

    如何在同一SQL查询中将计算出的列值用于另一列

  5. 5

    如何使用join和group by检索同一列的具有不同计算值的sql结果?

  6. 6

    SQL视图基于另一列计算列

  7. 7

    SQL Server:列的自动增量,按另一列中的值分区

  8. 8

    Oracle Sql获取针对另一列的每个不同值显示最多的值

  9. 9

    SQL-如何按标识列分组的一列的最大值排序?

  10. 10

    oracle sql,id,按一列分组,多列在另一列中不同

  11. 11

    Oracle SQL将sql行转换为按另一列分组的列

  12. 12

    如何在SQL select语句中基于另一列添加计算列

  13. 13

    SQL,按一列分组

  14. 14

    SQL按列排序并同时按另一列分组

  15. 15

    根据来自另一列的不同值对sql值求和,并将结果放入数组中

  16. 16

    SQL按值对另一列进行排序

  17. 17

    SQL Server查询以查找按一列分组但在其他至少一列中不同的值

  18. 18

    SQL Server:列的自动增量,按另一列中的值分区

  19. 19

    检索满足另一列中条件组合的一列中的所有不同值(SQL)

  20. 20

    php,sql-如何更改一列的值并将其插入另一列

  21. 21

    如何基于分组在一起的行向SQL表添加另一列

  22. 22

    sql计算两个值从另一列共享相同值的次数

  23. 23

    SQL CE:选择不同的,按另一列排序

  24. 24

    SQL Server:根据一列分组并根据另一列获取列

  25. 25

    SQL:为另一列选择不同的值

  26. 26

    返回按一列排序并按另一列分组的 SQL 数据

  27. 27

    SQL:如何根据SQL中另一列中的值范围对一列求和?

  28. 28

    T-SQL 如何选择一列值的计数,而另一列的值相同

  29. 29

    如何根据SQL中另一列的值过滤一列

热门标签

归档