みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Oracle SQL 2つのテーブルを使用する書き方について

OracleSQLどころかSQLが初めてなのですが、以下のような事がしたいんです。

金額テーブル       品名マスタ
品名コード 品名 金額  品名コード 品名コード名
1      ○○ \100   1      1の名前
1      ○× \250   2      2の名前
2      △△ \200  

この2つを使用して

品名 品名コード1の金額 品名コード2の金額 

というテーブルをSQL上で書きたいのですが、可能でしょうか?
可能であればどういう書き方にするといいのかご指導宜しくお願いします。

投稿日時 - 2007-02-16 17:15:26

QNo.2757865

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

SQL自体が初めてということなので質問自体が少し
的を得ていないような気がしますので確認させてください。
(質問に対して質問で返してしまい、申し訳ありません。)

最終的には
「品名 品名コード1の金額 品名コード2の金額」
といった形のテーブルを作りたい
(「SQL上で書きたい」という表現が良く理解できなかったので、「作りたい」という意味と当方で勝手に捕らえました。)
ということだと思うのですが、

品名も品名コード1の金額も品名コード2の金額も全てもとの金額テーブルにある列なので品名マスタは必要無いということになります。
(品名コード名を表示するとき以外は品名マスタは要らないですし、
 そもそもこの表の名前自体品名コード名マスタという表名にするべき)

また、元の金額テーブルでは品ごとにレコード(行)がありますが、
「品名 品名コード1の金額 品名コード2の金額」
といった形のテーブルを作りたいということであれば1行に
元表の1行を押し込めることになりますのでsumやcountといった
グループ関数というものを用いることが必要になってきます。

そもそも金額テーブルにおいて品名が○○と○×と違うのに
品名コードが同じ1でよいのでしょうか?
少しやりたいことがわからないのでもう少し質問文を修正していただいてもよろしいでしょうか。

回答についてはそれからさせてもらいたいと思います。

投稿日時 - 2007-02-24 16:26:31

お礼

whiteline507さん、読んで頂いて光栄です。
つい先ほどこの件が解決しまして、せっかくご回答頂こうとしていたところ、申し訳ありません。大至急締め切りすべきでした。ご迷惑おかけしました。

投稿日時 - 2007-02-24 17:29:52

あなたにオススメの質問