Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


431 / 2272 ツリー ←次へ | 前へ→

【11735】クエリ構文がうまく動作しない ろん 10/7/14(水) 14:25 質問[未読]
【11736】Re:クエリ構文がうまく動作しない 超初心者 10/7/14(水) 16:26 発言[未読]
【11737】Re:クエリ構文がうまく動作しない ろん 10/7/14(水) 17:42 お礼[未読]

【11735】クエリ構文がうまく動作しない
質問  ろん  - 10/7/14(水) 14:25 -

引用なし
パスワード
   クエリがうまく動作しないので、恥ずかしながら2回目の質問をさせて頂きます。

まず、使用するのは以下のテーブル2つです。


・KOSE_MST
構成ID 構成名称 商品コード 数 ユーザID
4444  システムA  1A1A   2 1111111
5555  システムB  2B2B   3 2222222
6666  システムC  3C3C   4 3333333
7777  システムA  2B2B   5 4444444

・KAKAKU_MST
部材コード 適用開始日 適用終了日 提供価格
1A1A    2010/07/01 2010/08/30 \1000
2B2B    2010/07/01 2010/08/30 \2000
3C3C    2010/07/01 2010/08/30 \3000


この表からクエリを使い、次のものを取り出したいと思っています。

・構成名称(KOSE_MST)
・数(KOSE_MST)×提供価格(KAKAKU_MST)の合計⇒新フィールド名「金額」とする。

ただし、取り出す時の条件は「KOSE_MSTの商品コード=KAKAKU_MSTの部材コード」です。
そして自分の予想では以下のような結果になるはずでした。

構成名称  金額
システムA  \2000
システムB  \6000
システムA  \10000

ですが、実際はまったく違う内容になってしまいました。
記述したクエリ文は以下の通りです。


SELECT KOSE_MST.構成名称, KOSE_MST.数量*KAKAKU_MST.提供価格 AS 金額
FROM KOSE_MST, KAKAKU_MST
WHERE KAKAKU_MST.部材コード IN (SELECT KOSE_MST.商品コード FROM KOSE_MST)


どのように記述すればよいでしょうか?
最終的には、システム名ごとの数×数量の合計を出したいと思っています。

解決策を教えていただけるとありがたいです。

【11736】Re:クエリ構文がうまく動作しない
発言  超初心者  - 10/7/14(水) 16:26 -

引用なし
パスワード
   ▼ろん さん:

SELECT KOSE_MST.構成名称, KOSE_MST.数量*KAKAKU_MST.提供価格 AS 金額
FROM KOSE_MST INNER JOIN KAKAKU_MST ON KOSE_MST.商品コード = KAKAKU_MST.部材コード

こんな感じでいかがでしょう。

【11737】Re:クエリ構文がうまく動作しない
お礼  ろん  - 10/7/14(水) 17:42 -

引用なし
パスワード
   ▼超初心者 さん:
おお、動きました!
INNER JOINを使うのですね。
INNER JOINで調べたところ、WHEREでの書き方も分かりました。

ありがとうございます。

431 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078193
(SS)C-BOARD v3.8 is Free