• ベストアンサー

ACCESSのSQLの書き方

ACCESSでのSQL文の書き方を教えてください。 テーブルtbl_Aとテーブルtbl_Bがあり, tbl_Aで得られた数値とtbl_Bで得られた数値を加えたものを結果として表示します。 どう書けばよろしいのでしょうか。どうしてもエラーになってしまいます。 イメージとしてはこんな感じです。 select (select ~~ from tbl_A where ~~)+(select ~~ from tbl_B where ~~) (もしoracleならば,「from dual」というのを最後に付けるんですが。)

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.3

(1)ダミーでテーブルを指定します。先頭1件だけ抽出します。 select top 1 (select ~ from tbl_A where ~)+(select ~ from tbl_B where ~) AS 結果 FROM tbl_A,tbl_B (2)FROM句にクエリを使います。 select A.数値+B.数値 AS 結果 FROM (select ~ AS 数値 from tbl_A where ~) AS A, (select ~ AS 数値 from tbl_B where ~) AS B 個人的には(2)ですかね。ASを除けば、Oracle等とも互換性のある 書式です。 (select ~)は1レコード1項目しか無いと想定しています。

noname#85313
質問者

お礼

ありがとうございます。参考になりました。 とりあえず、デザインの画面をいろいろいじって出来たのは、 SELECT [b1]+[b2] AS 合計 FROM [SELECT [b1] FROM tbl_A WHERE ~~ ]. AS クエリ1, [SELECT [b2] FROM tbl_B WHERE ~~ ]. AS クエリ2;

その他の回答 (2)

  • 6657
  • ベストアンサー率63% (7/11)
回答No.2

select ~~ from tbl_A where ~~ union select ~~ from tbl_B where ~~ ユニオンクエリーを作成し、そのクエリーをテーブルにした 集計クエリーを作成する。

回答No.1

tbl_Aとtbl_Bは、どうやって結合するのですか? ユニークなキーがあるのですよね?

関連するQ&A