
t_meisaiは以下の定義で調味料の使用履歴を記録しています。
idint4uniqueな値
date timestampyy/mm/dd
type int41 or 2 or 3
orderint4純粋な順番
typeには塩、砂糖のように固形のものは1、酢、醤油のように液状のものは2、それ以外は3が入ります。
orderはdate毎に使った順番が記録されていきます。
date || type のgroupごとの一番最初に使ったものだけ抽出したのが下のSQLです。
select date || type as key, min(order) from t_meisai group by key
上記の条件に当てはまるレコードのidを抽出したいのですがどうしたらよいのでしょうか?
No.2ベストアンサー
- 回答日時:
>クエリを実行したまま処理が戻りません。
というか、遅いんでしょう(^^;;;
>下のものはgroup by keyのkeyがないのでできませんでした。
うーん、「できませんでした」って書くより、group by句を直したほうが早いですよね?
select id, minorder from t_meisai t1,
(select date, type, min(order) as minorder from t_meisai group by date, type) t2
where t1.date = t2.date and t1.type = t2.type
No.1
- 回答日時:
min(order)が不要だったらこんなので。
select id from t_meisai t1
where exists(
select date || type as key, min(order) from t_meisai t2 group by key
having key = (t1.date || t1.type) )
min(order)も必要ならこんなんで
select id, minorder from t_meisai t1,
(select date, type, min(order) as minorder from t_meisai group by key) t2
where t1.date = t2.date and t1.type = t2.type
この回答への補足
ご回答ありがとうございます。
実は両方ともうまくいきませんでした。
上のものはhaving句のkeyが無効と言われ
having key > having (t2.date || t2.type)にしましたが
クエリを実行したまま処理が戻りません。
下のものはgroup by keyのkeyがないのでできませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
group byで指定したカラム以外...
-
NASAで働くにはどうしたらいい...
-
エクセル 2つの列にある値の完...
-
sqlに記述できない文字
-
truncate tableを使って複数の...
-
SQLで複数のテーブルをつないで...
-
SELECT INTOで一度に複数の変数...
-
VBAで、新しい値のみを抜き出す...
-
テーブル名が可変の場合のクエ...
-
SQLのIF文
-
同一テーブル内での比較(最新...
-
SQLサーバに対するSQL文で抽出...
-
副問合せを使わずにUNIONと同様...
-
UPDATEの更新前の値を取得したい
-
オラクルのUPDATEで複数テーブル
-
PostgreSQLのtimestamp型で時間...
-
あってますか?SQL
-
Accessの構成をコピーしたい
-
エクスポート不具合
-
SQLをExcelで書いている人を良...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PostgresSQLで自動計算
-
group byで指定したカラム以外...
-
ストアドプロシージャによる動...
-
複数の条件での絞り込み検索の仕方
-
PostgresSQLでの動的な計算
-
【SQL】他テーブルに含まれる値...
-
SELECT INTOで一度に複数の変数...
-
フラグをたてるってどういうこ...
-
sqlに記述できない文字
-
truncate tableを使って複数の...
-
UPDATEで既存のレコードに文字...
-
PostgreSQLのtimestamp型で時間...
-
オラクルのUPDATEで複数テーブル
-
既存データをINSERT文にして出...
-
エラーを起こす方法
-
SQLで、Join句で結合したテ...
-
Accessの構成をコピーしたい
-
SQLサーバに対するSQL文で抽出...
-
UPDATEの更新前の値を取得したい
-
JDBCを使ってdate型へのINSERT...
おすすめ情報