• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2つの情報を1つのSQLで取得する方法について)

SQLで2つの情報を1つのSQLで取得する方法について

このQ&Aのポイント
  • SQL文で、TESTテーブルからA、B、Cの3項目のデータを取得する方法がわかりません。
  • 要件は、項目AおよびBに関しては、WHERE句の条件を満たす全てのレコードを取得し、項目Cにおいては最大値のみ取得することです。
  • 現時点では、個別にSQLを作成して実行すると正常に結果を取得できますが、2つの結果を1つのSQLで取得する方法はわかりません。

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

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.2

いまいち条件がきちんと理解できていないのですが。 A・Bは全レコード、Cは最大値ということは、取得した全レコードはCの値は同一になるということでいいですか? それなら、 SELECT A, B, MAX(C) OVER() C FROM TEST WHERE Z = 'xxxxx' AND Y = 'x' AND X = 'Y'; でいいと思います。

その他の回答 (1)

  • cotae_bb
  • ベストアンサー率53% (51/95)
回答No.1

SELECT  * FROM ( SELECT   A,B,C  FROM   TEST  WHERE   Z = 'xxxxx'   AND Y = 'x'   AND X = 'Y'  ORDER BY   C DESC ) WHERE  ROWNUM = 1 Oracleは使ったことがないのですが、 Cでソートをした物のなかからROWNUMが1の物を取得すれば良いかと思います。

関連するQ&A