gpt4 book ai didi

c# - GROUP BY 子句中的错误。无法解析查询文本

转载 作者:行者123 更新时间:2023-11-30 23:27:39 25 4
gpt4 key购买 nike

我有一个复杂的 SQL 语句,我遇到了一个错误。他们提示我这个错误:GROUP BY 表达式错误。无法解析查询文本。

我粘贴了导致此错误的 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, satsschema.ufis b
WHERE a.UFISEmpGroup = b.UFISID
GROUP BY EmpName) m) Morning
WHERE (AllocationDate = @AllocationDate) AND (LocationName = @LocationName) AND (StationName <> '') AND (Break = 1)
GROUP BY StationName, LocationName, AllocationDate

最佳答案

我认为你混淆了很多概念。如果没有诸如 Min、Max、Avg 等聚合函数,则不能使用分组依据。

如果你想使用分组依据,你必须告诉如何处理这些非聚合字段:

Hour1, Hour2, Hour3, Hour4, Hour5, Hour6, Hour7, Hour8, Hour9, Hour10, Hour11, Hour12, EmpName, ShiftTime, BreakTime, SignIn, SignOut

我认为您想要的是 ORDER BY 而不是 GROUP BY。

关于c# - GROUP BY 子句中的错误。无法解析查询文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12402237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com