求助这个需求的SQL语句怎么写?我忘光了
有个 “记录” 表专门记录,三个列name(用户),addtime(时间),project(项目)。
求:查询每个用户当天的项目总共有多少个?
count(),grade,where 求查询语句
------解决方案--------------------SELECT name, cnt = COUNT(DISTINCT project)
FROM tb
WHERE DATEDIFF(DAY,Addtime,GETDATE())=0
GROUP BY name
------解决方案--------------------项目和用户之间的关联是不是存在一个项目有多个用户?
如果存在,那么还有项目用户明细表。还有用户表是不可少的。
select b.pname,COUNT(*) AS num
from Record a
left join project b on a.projectID=b.ID
WHERE (CONVERT(varchar(10), Addtime, 120) = CONVERT(varchar(10), GETDATE(), 120))
GROUP BY b.pname