簡體   English   中英

查詢SQL Server-分組字段時出錯

[英]query sql server - error when grouping fields

我有這個查詢

SELECT 
     B.IdDepartment,
     B.IdParent,
     CASE 
        WHEN B.IdParent = 3 THEN 'SANTO DOMINGO'
        WHEN B.IdParent = 4 THEN 'BAVARO'
        ELSE 'INACTIVOS' END AS Localidad, 
     A.IdUser As Codigo, 
     A.Name As Nombre, 
     B.Description As Departamento,
     CONVERT(DATE,C.RecordTime,102) As Fecha,
     CASE
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 1 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 6 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 2 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 0 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 3 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 1 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 4 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 2 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 5 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 3 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 6 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 4 AND H.IdUser = A.IdUser)
        WHEN  (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 7
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 5 AND H.IdUser = A.IdUser)
            END AS [Hora Entrada],
     CASE
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 1 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 6 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 2 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 0 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 3 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 1 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 4 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 2 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 5 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 3 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 6 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 4 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 7
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 5 AND H.IdUser = A.IdUser)
            END AS [Hora Salida],
     CASE
        WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) <> 0
            THEN (SELECT MAX(CONVERT(TIME,RecordTime)) FROM Record M WHERE M.RecordTime BETWEEN (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,C.RecordTime)))) AND (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,DATEADD(DD,1,CONVERT(DATE,C.RecordTime)))))) AND M.IdUser = A.IdUser)
        WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) = 0
           THEN (MIN(CONVERT(TIME,C.RecordTime)))
     END As [Registro Entrada],
     CASE
        WHEN(SELECT CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) <> 0
            THEN (SELECT MIN(CONVERT(TIME,RecordTime)) FROM Record M WHERE M.RecordTime BETWEEN (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,C.RecordTime)))) AND (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,DATEADD(DD,1,CONVERT(DATE,C.RecordTime)))))) AND M.IdUser = A.IdUser)
        WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) = 0
           THEN (MAX(CONVERT(TIME,C.RecordTime)))
    END As [Registro Salida]
FROM [User] A 
INNER JOIN  Department B ON A.IdDepartment = B.IdDepartment
INNER JOIN Record C ON A.IdUser = C.IdUser
INNER JOIN UserShift E ON A.IdUser = E.IdUser 
INNER JOIN Shift D ON E.ShiftId = D.ShiftId
INNER JOIN ShiftDetail F ON E.ShiftId = F.ShiftId
WHERE A.IdUser = '5516'
GROUP BY B.IdDepartment, B.IdParent, A.IdUser, A.Name, B.Description, CONVERT(DATE,C.RecordTime,102),
(DATEPART(WEEKDAY,C.RecordTime))

但是當我嘗試執行查詢時,它將引發以下錯誤

Msg 8120, Level 16, State 1, Line 13
Column 'Record.RecordTime' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

但我嘗試將其放入查詢中,因為取決於,如果您有截止時間,則是說截止時間不為零,而是拋出了上述錯誤,但我不知道該錯誤是什么

預期結果

在此處輸入圖片說明

但是如果我觸摸“記錄時間”字段,它將為我帶來這些結果,而我想要的是其他圖像的結果

在此處輸入圖片說明

問題是Registro EntradaRegistro Salida

 CASE
    WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) <> 0
        THEN (SELECT MAX(CONVERT(TIME,RecordTime)) FROM Record M WHERE M.RecordTime BETWEEN (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,C.RecordTime)))) AND (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,DATEADD(DD,1,CONVERT(DATE,C.RecordTime)))))) AND M.IdUser = A.IdUser)
    WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) = 0
       THEN (MIN(CONVERT(TIME,C.RecordTime)))
 END As [Registro Entrada],
 CASE
    WHEN(SELECT CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) <> 0
        THEN (SELECT MIN(CONVERT(TIME,RecordTime)) FROM Record M WHERE M.RecordTime BETWEEN (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,C.RecordTime)))) AND (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),(SELECT CONVERT(DATETIME,DATEADD(DD,1,CONVERT(DATE,C.RecordTime)))))) AND M.IdUser = A.IdUser)
    WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) = 0
       THEN (MAX(CONVERT(TIME,C.RecordTime)))
END As [Registro Salida]

由於以下原因,您必須使用GROUP BY:

(MIN(CONVERT(TIME,C.RecordTime)))

和:

(MAX(CONVERT(TIME,C.RecordTime)))

但您也可以使用(SELECT CONVERT(DATETIME,C.RecordTime)))) ,這不在GROUP BY 必須是,或更換CONVERT(DATE,C.RecordTime,102), (DATEPART(WEEKDAY,C.RecordTime)與剛剛C.RecordTime

但這給您重復的數據。 所以我的解決方案是放置一個子查詢而不是(MIN(CONVERT(TIME,C.RecordTime)))(MAX(CONVERT(TIME,C.RecordTime)))並使用DISTINCT而不是GROUP BY

SELECT distinct
     B.IdDepartment,
     B.IdParent,
     CASE 
        WHEN B.IdParent = 3 THEN 'SANTO DOMINGO'
        WHEN B.IdParent = 4 THEN 'BAVARO'
        ELSE 'INACTIVOS' END AS Localidad, 
     A.IdUser As Codigo, 
     A.Name As Nombre, 
     B.Description As Departamento,
     CONVERT(DATE,C.RecordTime,102) As Fecha,
     CASE
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 1 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 6 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 2 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 0 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 3 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 1 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 4 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 2 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 5 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 3 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 6 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 4 AND H.IdUser = A.IdUser)
        WHEN  (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 7
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2InHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2InMinute),2) + ':00')
                FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 5 AND H.IdUser = A.IdUser)
            END AS [Hora Entrada],
     CASE
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 1 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 6 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 2 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 0 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 3 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 1 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 4 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 2 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 5 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 3 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 6 
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                  FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 4 AND H.IdUser = A.IdUser)
        WHEN (SELECT (DATEPART(WEEKDAY,C.RecordTime))) = 7
            THEN (SELECT CONVERT(TIME, LEFT(CONVERT(VARCHAR,G.T2OutHour),2) + ':' + LEFT(CONVERT(VARCHAR,G.T2OutMinute),2) + ':00')
                FROM ShiftDetail G INNER JOIN UserShift H ON G.ShiftId = H.ShiftId WHERE G.DayId = 5 AND H.IdUser = A.IdUser)
            END AS [Hora Salida],
     CASE
        WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) <> 0
            THEN (SELECT MAX(CONVERT(TIME,RecordTime)) FROM Record M WHERE M.RecordTime BETWEEN 
            (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),/*(SELECT */CONVERT(DATETIME,C.RecordTime)/*)*/)) AND 
            (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),/*(SELECT */CONVERT(DATETIME,DATEADD(DD,1,CONVERT(DATE,C.RecordTime))/*)*/))) AND M.IdUser = A.IdUser)
        WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) = 0
           THEN (select MIN(CONVERT(TIME,M.RecordTime)) from Record M where M.IdUser=A.IdUser and CONVERT(DATE,M.RecordTime,102) = CONVERT(DATE,C.RecordTime,102) and DATEPART(WEEKDAY,M.RecordTime) = (DATEPART(WEEKDAY,C.RecordTime)))
     END As [Registro Entrada],
     CASE
        WHEN(SELECT CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) <> 0
            THEN (SELECT MIN(CONVERT(TIME,RecordTime)) FROM Record M WHERE M.RecordTime BETWEEN 
            (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),/*(SELECT */CONVERT(DATETIME,C.RecordTime)/*)*/)) AND 
            (SELECT DATEADD(HOUR,(SELECT CuttingHour FROM Shift X INNER JOIN UserShift Z ON X.ShiftId = Z.ShiftId WHERE Z.IdUser = A.IdUser),/*(SELECT */CONVERT(DATETIME,DATEADD(DD,1,CONVERT(DATE,C.RecordTime))/*)*/))) AND M.IdUser = A.IdUser)
        WHEN(SELECT H.CuttingHour FROM Shift H INNER JOIN UserShift G ON H.ShiftId = G.ShiftId WHERE G.IdUser = A.IdUser) = 0
           THEN (select MAX(CONVERT(TIME,M.RecordTime)) from Record M where M.IdUser=A.IdUser and CONVERT(DATE,M.RecordTime,102) = CONVERT(DATE,C.RecordTime,102) and DATEPART(WEEKDAY,M.RecordTime) = (DATEPART(WEEKDAY,C.RecordTime)))
    END As [Registro Salida]
FROM User A 
INNER JOIN Department B ON A.IdDepartment = B.IdDepartment
INNER JOIN Record C ON A.IdUser = C.IdUser
INNER JOIN UserShift E ON A.IdUser = E.IdUser 
INNER JOIN Shift D ON E.ShiftId = D.ShiftId
INNER JOIN ShiftDetail F ON E.ShiftId = F.ShiftId
WHERE A.IdUser = '5516'
--GROUP BY B.IdDepartment, B.IdParent, A.IdUser, A.Name, B.Description,
/*CONVERT(DATE,C.RecordTime,102), (DATEPART(WEEKDAY,C.RecordTime))*/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM