• 締切済み

アクセスのクエリについて(その2)

同じような質問を昨日したのですが、どうも例が 誤っていたようで再度質問します。 こんなクエリを作成したいのですが、何か手は ありませんか? <タイトルDB> ID NAME ─────── 1  あ 2  い 3  う 4  え 5  お <注文DB> ID cnt ─────── 1  10 4  20 5  30 1  30 2つのDBをIDで結合してクエリ(レコード数の カウント)を作成すると name cnt ─────── あ  2 え  1 お  1 と出力されるかと思います。 これを下記の感じに出したいのですが name cnt ─────── あ 2 い 0 う 0 え 1 お 1 とにかく、0件と表示させたいのです。

みんなの回答

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

SQLでは#1の方と同様ですが下記で大丈夫です。 SELECT タイトルDB.NAME, Count(注文DB.cnt) AS cntのカウント FROM タイトルDB LEFT JOIN 注文DB ON タイトルDB.ID = 注文DB.ID GROUP BY タイトルDB.NAME ORDER BY タイトルDB.NAME; クエリで作りたい場合は、 タイトルDBと注文DBをクエリに追加してリレーションの結合プロパティで タイトルDBの全てのレコードと注文DBの同じ結合フィールドのレコードだけを含める 見た目でタイトルDBから注文DBへ→の結合になります。 クエリのフィールドはNAMEとcntにして集計しNAMEでグループ化しcntをカウント するようにすればOKです。

  • tksoft
  • ベストアンサー率36% (99/273)
回答No.1

当方Access97ですが SELECT タイトルDB.ID, タイトルDB.NAME, Count(注文DB.cnt) AS cntのカウント FROM タイトルDB LEFT JOIN 注文DB ON タイトルDB.ID = 注文DB.ID GROUP BY タイトルDB.ID, タイトルDB.NAME; でよろしいかと思います。 クエリーのSQLビューに貼り付けて、結果を見てください。

関連するQ&A