![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
SQL HAVING句?集約関数について
現在、SQLを書いているのですが、集約関数についてわからないことがあります。
下記のようなテーブルについて
品番 SEC SUB 倉庫コード 日付 金額
0102A255-****10000141220064201005015700
0102A255-****10000141220064200912267980
0102A255-****10000141220064200910019400
品番をひとつに絞り、かつ最新日付とその金額をもってくるためにはどうしたらいいでしょうか?
ようは一番上のレコードのみ抽出したいということです。
どなたかお願いします。
No.1ベストアンサー
- 回答日時:
集約しないといけないのですか?
それとも、行の先頭だけ出せば良いのですか?
同じ品番の先頭行だけ出せば良いのなら
SELECT DISTINCT * FROM テーブル名 WHERE 品番 = '0102A255-****100001' ORDER BY 日付 asc;
とか・・・。
HAVING句は、GROUP BYで纏めた値とかの抽出に使います。
http://www.pursue.ne.jp/jouhousyo/SQLDoc/select1 …
この回答への補足
すみません。
詳しく書くとかえってわかりにくくなると思い、割愛させていたできました。
上記テーブルのデータはすでにいくつかのテーブルを結合し、必要最小限なデータまでGROUP BYで絞りこんだ状態です。
上記テーブル内にはひとつの品番しか書きませんでしたが、
本テーブルには同じように金額と日付以外が同じデータがいくつも存在します。
そのテーブルから品番はユニークなものしてなおかつ、日付がもっとも新しいデータだけを抽出したいのです。
この段階から方法があるかどうかわかりませんが、理想としては
HAVING句でその品番について日付 = 最新日付で返されるデータのみが欲しいということになります。
なにか方法はあるでしょうか?
No.2
- 回答日時:
今作っているSQLが分からないとHAVING句をどのように使用すればいいか分からないと思います。
元がテーブルなら
select *
from テーブル t
where not exists
( select 1 from テーブル t2
where t.品番 = t2.品番
and t.日付 < t2.日付 )
の要領で最新日付のものを取得出来ると思うのですが。
参考になりませんか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- SQL Server これをSQL文で出来るでしょうか? 1 2023/03/26 02:16
- Excel(エクセル) EXCELの「接続」のSQLのコマンド文字列にて、セルから任意の数値を利用したい 2 2023/03/09 16:43
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- Oracle sqlで質問です。 Aテーブルの情報をBテーブルに更新かけたいです。 やりたいことは、Bテーブルの受 1 2023/05/17 11:17
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
SELECTの結果で同一行を複数回...
-
固定値を含む結合と複数テーブ...
-
select insertで複数テーブルか...
-
外部結合とor条件混在の記述方法
-
副問い合わせのinsert文
-
unionの結果は集計はできないで...
-
MERGE文を単体テーブルに対して...
-
select句副問い合わせ 値の個...
-
SQLでの絞り込み検索
-
複数テーブルのMAX値の行データ...
-
updateの一括実行
-
Oracle[10g]のSQL文について
-
SQL GROUPで件数の一番多いレコ...
-
oracleの分割delete
-
SET句内で複数の条件を指定して...
-
マテビューのNOTNULL設定について
-
SQLの重複選択について
-
unionでマージした副問合せを結合
-
複数のテーブルに対してのleft ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
select句副問い合わせ 値の個...
-
select insertで複数テーブルか...
-
SELECTの結果で同一行を複数回...
-
MERGE文を単体テーブルに対して...
-
他のテーブルを参照した値はupd...
-
SET句内で複数の条件を指定して...
-
固定値を含む結合と複数テーブ...
-
SQL GROUPで件数の一番多いレコ...
-
oracleの分割delete
-
外部結合とor条件混在の記述方法
-
unionの結果は集計はできないで...
-
複数テーブルのMAX値の行データ...
-
unionでマージした副問合せを結合
-
集計後の数値が倍になる
-
構成比を求めるSQL文につきまして
-
COUNTの取得方法(?)について...
-
SQLの書き方(チェックボックス)
-
結合と副問い合わせの違い
-
DELETE 文とEXISTSの使い方につ...
おすすめ情報