我有一个复杂的 SQL 语句,当我加入这个“选择”语句时遇到错误。他们提示我这个错误:
Error in Join expression. Can't parse query text.
我粘贴了这个我认为会导致此错误的 SQL 语句。谁能告诉我哪里出了问题?我从不在这里粘贴整个 SQL 语句,因为我认为你们看到会很乱,如果需要,请告诉我。有任何想法吗???
SELECT AllocationDate, LocationName, StationName, Hour1, Hour2, Hour3, Hour4, Hour5, Hour6, Hour7, Hour8, Hour9, Hour10, Hour11, Hour12, EmpName, ShiftTime,
BreakTime, SignIn, SignOut
FROM (SELECT z.AllocationDate, z.LocationName, z.StationName, a.Hour1, b.Hour2, c.Hour3, d .Hour4, e.Hour5, f.Hour6, g.Hour7, h.Hour8, i.Hour9, j.Hour10, k.Hour11,
l.Hour12, m.EmpName, m.ShiftTime, m.BreakTime, m.SignIn, m.SignOut
FROM (SELECT DISTINCT AllocationDate, LocationName, StationName
FROM satsschema.viewmain
WHERE (StationName IS NOT NULL)) z LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour1
FROM satsschema.view00000100) a ON z.LocationName = a.LocationName AND z.StationName = a.StationName AND
z.AllocationDate = a.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour2
FROM satsschema.view01000200) b ON z.LocationName = b.LocationName AND z.StationName = b.StationName AND
z.AllocationDate = b.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour3
FROM satsschema.view02000300) c ON z.LocationName = c.LocationName AND z.StationName = c.StationName AND
z.AllocationDate = c.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour4
FROM satsschema.view03000400) d ON z.LocationName = d .LocationName AND z.StationName = d .StationName AND
z.AllocationDate = d .AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour5
FROM satsschema.view04000500) e ON z.LocationName = e.LocationName AND z.StationName = e.StationName AND
z.AllocationDate = e.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour6
FROM satsschema.view05000600) f ON z.LocationName = f.LocationName AND z.StationName = f.StationName AND
z.AllocationDate = f.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour7
FROM satsschema.view06000700) g ON z.LocationName = g.LocationName AND z.StationName = g.StationName AND
z.AllocationDate = g.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour8
FROM satsschema.view07000800) h ON z.LocationName = h.LocationName AND z.StationName = h.StationName AND
z.AllocationDate = h.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour9
FROM satsschema.view08000900) i ON z.LocationName = i.LocationName AND z.StationName = i.StationName AND
z.AllocationDate = i.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour10
FROM satsschema.view09001000) j ON z.LocationName = j.LocationName AND z.StationName = j.StationName AND
z.AllocationDate = j.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour11
FROM satsschema.view10001100) k ON z.LocationName = k.LocationName AND z.StationName = k.StationName AND
z.AllocationDate = k.AllocationDate LEFT OUTER JOIN
(SELECT DISTINCT AllocationDate, LocationName, StationName, Hour12
FROM satsschema.view11001200) l ON z.LocationName = l.LocationName AND z.StationName = l.StationName AND
z.AllocationDate = l.AllocationDate LEFT OUTER JOIN
(SELECT a.EmpName, CONCAT(b.StartTime, ' - ', b.EndTime) AS ShiftTime, CONCAT(a.EmpTime, ' - ', ADDTIME(a.EmpTime, '0 1:0:0.000000'))
AS BreakTime, a.Break, a.EmployeeOnBreak, '' AS SignIn, '' AS SignOut
FROM satsschema.employeeslot a JOIN
satsschema.ufis b m ON b.UFISID = a.UFISEmpGroup) Morning
WHERE (AllocationDate = @AllocationDate) AND (LocationName = @LocationName) AND (StationName <> '') AND (Break = 1)
GROUP BY StationName, LocationName, AllocationDate