• ベストアンサー

SQL文の質問です

社員表(EMP表)と給与等級表(SALGRADE表)を結合したいのですが下記を実現するSQL文がわかりません。 SALGRADE表は等級(grade)、最低給(Losal)、最上給(Hisal)の3つを持っています。 EMP表の月給(Sal)と、SALGRADE表の最低給(Losal)と最上給(HIsal)とを照らし合わせて該当する等級(grade)をEMP表に結合したいのですが、適切なSQL文がありましたら教えてください。 基本的にはoracleを使用していますが、できればmysqlで実現可能なSQL文も合わせて教えてください。

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

  • ベストアンサー
  • Mizyu
  • ベストアンサー率41% (245/593)
回答No.1

ちょっと文面だけからでは要件が飲み込みにくいのですが SELECT EMP.*, SALGRADE.grade FROM EMP, SALGRADE WHERE EMP.sal <= SALGRADE.hisal AND EMP.sal >= SALGRADE.losal でよいのではないしょうか。

volca
質問者

お礼

早速のご回答ありがとうございます。 質問の書き方が悪く、わかりにくかったとは思いますが複数のgradeがある中からどのgradeに該当するかを出したかったのです。 ただ、私の早とちりで今回はそもそも結合する必要がありませんでした。副問い合わせで解決できそうです。 ご迷惑をおかけしましたが、回答いただきありがとうございました。

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

関連するQ&A