• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:テーブル間の結合)

テーブル間の結合による参照方法

このQ&Aのポイント
  • テーブル1とテーブル2を関連づけて、テーブル2の最大値を参照する方法
  • SQL文でテーブル1とテーブル2を結合し、テーブル2の最大値を参照する操作
  • テーブル間の結合によるデータ参照で最大値を取得する方法

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

  • ベストアンサー
回答No.1

>次のようなSQL文ではエラーとなりました どんなエラーになったか書きましょう。 「group byで指定していないID列を、selectで指定している」といった内容でしょうか? (1)SQL例1・・・ID列とCD列は同じになるので、ID列を表示しなくていい場合 select CD,max(TT) as TT from Table1 inner join Table2 on CD=ID group by CD; (2)SQL例2・・・CD列、ID列を表示する場合 select CD,ID,max(TT) as TT from Table1 inner join Table2 on CD=ID group by CD,ID; (3)SQL例3 select CD,X.ID,X.TT from Table1 inner join (select ID,max(TT) as TT from Table2 group by ID) as X on CD=X.ID;

kensirooo
質問者

お礼

早速の返事ありがとうございます。 そうですね、例2と例3のような 操作をしたかったのです。 例2のように、group by句にもう片方の列名を 加えないといけなかったということですね。 例3の操作は初めて見ました。今回の件で言えば 例2を見習って行こうと思います。 有難う御座いました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.2

#1回答者です。 今回はCD列とID列という、たまたま同じ値を持つ列だったので、group byに列を追加するだけでOKでした。 グループ化したものと、グループ化していないものを結合したいという要件は時々あり、そういうときは例3のような使い方の方が応用は利くと思います。

すると、全ての回答が全文表示されます。

関連するQ&A