
SQL文で困っています。
ご教授下さい。
下記のようなデータがあった場合、それぞれの区分毎に
年月が最大(最新)のデータを取得したいです。
(実際には1レコードにその他項目があり、それらも取得します。)
<検索対象データ>
区分 年月 金額
-----------------------------
A 200412 600
A 200503 560
B 200311 600
B 200508 1000
B 200504 560
C 200508 400
C 200301 1100
<取得したいデータ>
区分 年月 金額
-----------------------------
A 200503 560
B 200508 1000
C 200508 400
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
テーブル名をXXXとすると次のようなSQLでよいと思います。
(最善の方法かどうかは自信がないですが)select B.* from (select 区分, max(年月) as 年月 from XXX group by 区分) As A
inner join XXX as B on A.区分 = B.区分 and A.年月 = B.年月
order by B.区分
早々のご回答ありがとうございました。
inner joinを使えばよかったんですね。
希望通りのデータを取得することが出来ました!
No.5
- 回答日時:
すいません、下の#4のSQLに1箇所間違いがありました。
select WK1.区分, WK1.年月,
WK2.金額
from テーブルA WK2,
(select max(年月) as 年月,
区分 as 区分
from テーブルA
~~~~~~~~~~
group by 区分) WK1
where WK2.区分 = WK1.区分
and WK2.年月 = WK1.年月
ご回答ありがとうございました。
サブクエリーのうまく出来ず、悩んでいましたが
理解できました。
希望通りのデータを取得することが出来ました!
皆様、ありがとうございました。
いくつか方法を教えた頂きましたので、あとは実際に
早く取得できる方を使ってみようと思います。
No.4
- 回答日時:
副問合せを使って以下のようなSQLではいかがでしょうか(^^;
select WK1.区分, WK1.年月,
WK2.金額
from テーブルA WK2,
(select max(年月) as 年月,
区分 as 区分
from テーブルB
group by 区分) WK1
where WK2.区分 = WK1.区分
and WK2.年月 = WK1.年月
No.1
- 回答日時:
年月をグループ化して、金額の最大値を取得ってところでしょうか?
SELECT *,MAX(金額) FROM テーブル名 GROUP BY 年月
これでどうでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
- Visual Basic(VBA) 追記する列を増やしたい 2つのデータを検索・照合して元データにないデータを下記マクロで商品名を追記し 9 2022/10/05 10:50
- SQL Server これをSQL文で出来るでしょうか? 1 2023/03/26 02:16
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- Visual Basic(VBA) VBAで重複データを確認したい 5 2022/10/07 16:24
- その他(データベース) ORMについて 1 2022/06/18 10:07
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- 家賃・住宅ローン 住宅ローン控除の申請について教えてください 3 2023/02/25 09:07
- その他(Microsoft Office) パワークエリの複数ファイルのデータ統合について 3 2022/07/14 17:06
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSのSQLで、NULLかNULLでな...
-
sqlserverで集計結果をUPDATEし...
-
オラクルではできるのにSQLSERV...
-
アクセス 日付抽出(年月のみ)...
-
違いを教えてください
-
プライマリーキーで同じ値をUPD...
-
accessでのリンクテーブルの更新
-
集計処理について
-
sqlplusでバックスペースが効か...
-
「マスタ」と「テーブル」の違...
-
SI Object Browserのテーブルス...
-
3つ以上のテーブルをUNIONする...
-
アクセスのテーブル作成クエリ...
-
ビューで引数を使いたい
-
Access VBA [リモートサーバー...
-
SELECT文でのデッドロックに対...
-
Access 削除クエリが重い
-
ACCESSのBookmarkプロパティの...
-
Accessにインポートしたら並び...
-
インデックスの再構築の意味っ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSのSQLで、NULLかNULLでな...
-
オラクルではできるのにSQLSERV...
-
sqlserverで集計結果をUPDATEし...
-
アクセス 日付抽出(年月のみ)...
-
違いを教えてください
-
sqlserverで対象のレコードを削...
-
accessでのリンクテーブルの更新
-
更新クエリでキー違反
-
Access2000へのインポートエラー
-
sqlserverで同一キー単位で金額...
-
テーブル定義について
-
ACCESSで複数テーブルを結合し...
-
AccessのSQLで、FROM句の構文エ...
-
MAX値を条件にデータを取得する...
-
プライマリーキーで同じ値をUPD...
-
集計処理について
-
シャープレジスター エラーコード
-
アクセスで複数テーブルの選択
-
sqlserverでUPDATEできません
-
sqlplusでバックスペースが効か...
おすすめ情報