有下表
表A
ID Username Role SYS_CREATION_DATE
在该表中,用户名可以多次出现不同的行。所以数据可能是:
ID Username Role SYS_CREATION_DATE
--------------------------------------------------
1 JoeSmuck 5 4-DEC-2017 08.00.00000000 AM
2 JoeSmuck 4 4-DEC-2017 08.00.00000000 AM
3 MaryLamb 5 4-DEC-2017 08.00.00000000 AM
4 MaryLamb 4 4-DEC-2017 08.00.00000000 AM
5 MickeyM 5 4-DEC-2017 08.00.00000000 AM
6 MickeyM 4 4-DEC-2017 08.00.00000000 AM
试图找出SQL语句,以便在12月4日找到三个用户
答案 0 :(得分:1)
将GROUP BY
与DISTINCT
SELECT SYS_CREATION_DATE, COUNT(DISTINCT username)
FROM TableA
GROUP BY SYS_CREATION_DATE
答案 1 :(得分:0)
您的日期看起来像是时间组件。你应该摆脱它。以下适用于某些数据库:
select trunc(sys_creation_date), count(distinct username)
from t
group by trunc(sys_creation_date);
不同的数据库具有不同的功能来删除时间组件。