だから、私は常にこの問題に取り組んでおり、誰かがうまくいかない方法や理由について良い説明をしてくれるかもしれません。GROUP BY を 1 列だけ 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);