集合子句的集合函数警告

时间:2012-10-22 12:40:06

标签: sql ms-access group-by ms-access-2007

所以我一直在努力解决这个问题,也许有人可以给我一个很好的解释,告诉我如何或为什么它不会工作。我尝试GROUP BY只有一列CSHFutureTAs.Time并且我尝试整合简单的线

GROUP BY CSHFutureTAs.Time

然而这给了我一个错误"你试图执行一个不包含指定表达式的查询' TA'作为聚合函数的一部分",任何人都可以帮助我吗?

完整的SQL(没有GROUP CLAUSE):

    SELECT CSHFutureTAs.TA
   , CSHFutureTAs.TIME AS CSHGeneralTAs_TIME
   , CSHFutureTAs.[CUT OFF         TIME]
   , CSHFutureTAs.SUNDAY AS CSHGeneralTAs_SUNDAY
   , CSHFutureTAs.MONDAY AS CSHGeneralTAs_MONDAY
   , CSHFutureTAs.TUESDAY AS CSHGeneralTAs_TUESDAY
   , CSHFutureTAs.WEDNESDAY AS CSHGeneralTAs_WEDNESDAY
   , CSHFutureTAs.THURSDAY AS CSHGeneralTAs_THURSDAY
   , CSHFutureTAs.FRIDAY AS CSHGeneralTAs_FRIDAY
   , CSHFutureTAs.SATURDAY AS CSHGeneralTAs_SATURDAY
   , FUT_Totals.TIME AS GeneralTotals_Time
   , FUT_Totals.SUNDAY AS GeneralTotals_SUNDAY
   , FUT_Totals.MONDAY AS GeneralTotals_MONDAY
   , FUT_Totals.TUESDAY AS GeneralTotals_TUESDAY
   , FUT_Totals.WEDNESDAY AS GeneralTotals_WEDNESDAY
   , FUT_Totals.THURSDAY AS GeneralTotals_THURSDAY
   , FUT_Totals.FRIDAY AS GeneralTotals_FRIDAY
   , FUT_Totals.SATURDAY AS GeneralTotals_SATURDAY
   , CSHFutureTAs.[EXCEPTION DAYS]
   , CSHFutureTAs.[EXCEPTION VALUE]
   , IIf([FUT_Totals] ! [Time] = "09:00 - 21:00"
      OR [FUT_Totals] ! [Time] = "10:00 - 22:00", 9, 1) AS SortKey
FROM
(
   CSHFutureTAs
   INNER JOIN FUT_Totals ON (CSHFutureTAs.[HG ID] = FUT_Totals.HG_ID)
      AND (CSHFutureTAs.TIME = FUT_Totals.TIME)
)
INNER JOIN Current_INFO ON (CSHFutureTAs.[HG ID] = Current_INFO.[HG ID])
   AND (CSHFutureTAs.[HEADER ID] = Current_INFO.[HEADER ID])
   AND (FUT_Totals.HG_ID = Current_INFO.[HG ID])
ORDER BY IIf([FUT_Totals] ! [Time] = "09:00 - 21:00"
      OR [FUT_Totals] ! [Time] = "10:00 - 22:00", 9, 1);

1 个答案:

答案 0 :(得分:1)

您的GROUP BY CSHFutureTAs.Time条款究竟在哪里?

您需要按一列分组,而不属于该组的任何其他列必须在其上具有聚合函数,例如SUM或AVG。

另外我不认为你需要你的FROM parentesys。你为什么加上这个?

相关问题