SQLについて皆さんのお知恵をかしてください
以下の表 tab01から Q01の結果を取り出すSQL文です
検索条件は以下の通り
1) 表tab01から、col1,col2,col3,col4 についてQ01へ出力
2) col2(char型)について "国語","算数","理科"を抽出
3) col4(date型)について「直近」の行のみ抽出
但し、Q01.col2において同じ値が発生する場合は、tab01.col1の値が
最も大きい行を抽出する(例:02,算数と10,算数)
この要件を満たすSQL文はどう書けばよいでしょうか?
なお、DBはoracle とします
tab01
col1 col2 col3 col4
01 国語 80 20011211
02 算数 100 20011208
03 理科 80 20011201
04 国語 90 20011210
05 社会 100 20011209
06 算数 60 20011202
07 体育 80 20011205
08 国語 40 20011207
09 理科 70 20011210
10 算数 100 20011208
Q01
col1 col2 col3 col4
01 国語 80 20011211
10 算数 100 20011208
09 理科 70 20011210
どうかよろしくお願いいたします
No.2ベストアンサー
- 回答日時:
oracleは使用したことがないんですけど、下のSQLで大丈夫でしょう。
主キーはcol1と仮定しました。
------------------------------
select tab01.*
from tab01,
(select max(col1) MaxCol1
from tab01,
(select col2,max(col4) MaxCol4
from tab01
where col2 in('国語','算数','理科')
group by col2) A
where (tab01.col2=A.col2) and (tab01.col4=A.maxcol4)
group by tab01.col2)B
where tab01.col1=B.MaxCol1
--------------------------------
もっとすっきりしたSQLがあるんですどoracleで動くか分からないもので......。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel 、この式はどのように解釈すればいいのでしょうか 4 2023/02/03 08:53
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- その他(コンピューター・テクノロジー) Pythonの np.indicesに関する質問です。 2 2023/02/07 08:19
- JavaScript java keyを配列で表記したい 10 2022/12/01 17:53
- その他(プログラミング・Web制作) seleniumbasic chrome操作について 1 2023/03/29 15:40
- Excel(エクセル) Excelでこの式の意味をおしえていただけますでしょうか、またどのように理解したらいいのでしょうか 3 2022/11/18 00:11
- PHP PHP MySql ページング 2 2022/09/20 06:38
- 高校受験 英語科に行くのはアリかナシか 5 2022/11/01 23:41
- 中学校受験 中学受験 3 2022/11/13 21:17
- 中学校 理科だけが極端に苦手 5 2022/09/10 14:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQL 外部結合についての質問
-
エクスプローラーで「2つの条件...
-
Accessで別テーブルの値をフォ...
-
【アクセスVBA】テーブルにフィ...
-
抽出したデータを修正して元の...
-
Order by句でバインド変数を使...
-
どのようなレコード構成でもfil...
-
Accessで自前の自動採番処理で...
-
[VBA] ADOの Clone と AddNew
-
カレントレコードが無い事を判...
-
Access Dlookup関数について
-
sum()の出力結果順に並び替えを...
-
GROUP BYを使ったSELECT文の総...
-
使うべきでない文字。
-
SQLplusで解いていて、 11gなの...
-
困っています。ORACLE_SQL 複数...
-
アクセスで「空き番」の確認
-
JSPのNULLレコード表示について...
-
LIKE述語/SQLとPHPを使った検...
-
大量のテキストデータの集計に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQL 外部結合についての質問
-
自己相関サブクエリと自己結合...
-
エラー2「無効な識別子です」
-
2つのSQL(Access)の結果[時刻,...
-
関係演算子が無効です。
-
同じテーブルをLEFT JOIN
-
SQLで後方の文字列を置換する方法
-
エラー「無効な識別子です」
-
LEFT JOINの条件式で=’’を使用...
-
Excel VBAで、Averageの範囲を...
-
エクセルVBAでSUM関数の位置を...
-
GROUP BYを行った後に結合した...
-
Accessで別テーブルの値をフォ...
-
Oracleでの文字列連結サイズの上限
-
SELECTで1件のみ取得するには?
-
SQL文で右から1文字だけ削除す...
-
GROUP BYを使ったSELECT文の総...
-
select句副問い合わせ 値の個...
-
レコードが存在しなかった場合
-
ADO VBA 実行時エラー3021
おすすめ情報