User表:
UseSituation表:
想要得到每一个用户在Time1和Time2时间段内使用设备的时间和(未使用记为"0小时0分钟")
我的SQL语句(Time1取的是'2009-12-5' Time2取的是'2009-12-14'):
SQL code:
SELECT dbo.[User].Pno, dbo.[User].UserName, dbo.[User].Grade, dbo.[User].Professioal,
dbo.[User].Class, dbo.[User].Role, CONVERT(varchar, SUM(DATEDIFF(n, B.BeginTime,
B.EndTime)) / 60) + '小时' + CONVERT(varchar, SUM(DATEDIFF(n, B.BeginTime,
B.EndTime)) % 60) + '分钟' AS 累计时间
from dbo.[User] LEFT OUTER JOIN
(SELECT User_1.Pno, User_1.UserName, User_1.Grade, User_1.Professioal,
User_1.Class, User_1.Role, User_1.TimeLimit, C.BeginTime,
C.EndTime
from dbo.[User] AS User_1 INNER JOIN
(SELECT Id, Pno, Phomeno, Grade, Professional, Class, BeginTime,
EndTime, UseSituation, Notes, IsPunishment, Adminer
from dbo.UseSituation
WHERE (BeginTime > '2009-12-5') AND (BeginTime < '2009-12-14'))
AS C ON User_1.Pno = C.Pno) AS B ON dbo.[User].Pno = B.Pno
GROUP BY dbo.[User].Pno, dbo.[User].UserName, dbo.[User].Grade,
dbo.[User].Professioal, dbo.[User].Class, dbo.[User].Role
求Access语句
请调通后再回贴!帮顶有分!
我