1

次のクエリはMSAccessでうまく機能しますが、実際には、メインプロジェクトフィールドと名前のカウントのみを取得したかったのです。何かのようなもの:

SELECT Sheet1.[Main project], Count(Sheet1.[Name]) AS Total

これを行うと、次のエラーが発生します。

「集約された関数の一部として、指定された式「メインプロジェクト」を含まないクエリを実行しようとしました」

参加中に何か問題がありますか?何が正しくないのか考えてみませんか?

SELECT Sheet1.[Main project], Sheet1.[Main link], Sheet1.[Name]
FROM Sheet1
INNER JOIN Sheet1 AS Sheet1_1 

ON (Sheet1.[Main link] = Sheet1_1.[Main link]
AND Sheet1.[Main project] = Sheet1_1.[Main project])

WHERE Sheet1_1.[Name] ='0.4 Rollout plan approved'
AND Sheet1_1.[%compl#] = 100
AND (Sheet1_1.[Task class] <> '***Sammelvorgang' AND Sheet1_1.[Task class] <> '' AND  Sheet1_1.[Task class] <> 'M D-Muster')

AND Sheet1.[Main project] = 'AUDI AG, Ingolstadt'
AND (Sheet1.[Task class] <> '***Sammelvorgang' AND Sheet1.[Task class] <> '' AND  Sheet1.[Task class] <> 'M D-Muster')
AND (Sheet1.[Name] NOT LIKE '0.*' AND Sheet1.[Name] NOT LIKE '1.*')
AND Sheet1.[Start] < DateAdd("d",-7,Now())
4

1 に答える 1

1
SELECT Sheet1.[Main project], Count(Sheet1.[Name]) AS Total
    FROM Sheet1
    GROUP BY Sheet1.[Main project]

次のような集計関数Count()は、テーブル内のすべての合計数が必要な場合にのみ自動的に機能します。より具体的なグループに分割したい場合はGROUP BY、データベースに分割方法を伝えるステートメントが必要です。

それをより大きなクエリに統合することは問題ではありません。GROUP BY句が句の後に来ることに注意してくださいWHERE。したがって、最後に追加する必要があります。

于 2012-12-18T11:22:15.270 に答える