nameで重複しているレコードをDateの
最新の日のレコードのIDをTGT_IDに入れたいのですが
select * from テーブル名
where name in (
select name from テーブル名
group by name
having count(*) > 1
)
と重複したカラムを抽出まではできるのですが
そこからどうしたらいいのか分かりません
どなたかご教授をお願いします。
IDnamedatetgt_id
1A200404032
2A200406252
3B200404294
4B200406234
No.1ベストアンサー
- 回答日時:
タイトルに書かれているように、”更新”するのが最終目標なんですよね?
更新するのであれば...
(分析関数の使えるオラクルの場合)
update テーブル x
set
tgt_id
=
(select id from
(select id,row_number() over(partition by name order by date desc) R
from テーブル y where x.name=y.name) where R=1)
where
name in
(
select name from テーブル名
group by name
having count(*) > 1
)
と書きたいところだけど、サブクエリの相関条件がネストが深くてエラーになる
はずなので、効率を犠牲にして・・
update テーブル x
set
tgt_id
=
(select id from
(select id,name,row_number() over(partition by name order by date desc) R
from テーブル y) z where z.name=x.name and R=1)
where
name in
(
select name from テーブル名
group by name
having count(*) > 1
)
と書くしかないように思います。
テストしてないので、チョンボがあるかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- Oracle SQL update方法 2 2022/06/22 14:07
- MySQL 共通点はあります。何が違うのでしょうか? 1 2023/01/27 05:22
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessから呼び出した値を比較...
-
最新から100行のSELECT文
-
OR と IN の違い
-
大文字/小文字の区別しないで検...
-
複数パターンの集計結果を一度...
-
Oracleのエラースタックトレー...
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
SELECT 文 GROUP での1件目を...
-
datetime型でNULL値を入れたい。
-
外部参照してるキーを主キーに...
-
カーソル0件の時にエラーを発生...
-
for whichの使い方
-
Oracleのデータ型、NUMBERについて
-
リストビューの項目の内容を変...
-
EXISTSを使ったDELETE文
-
SQLで特定の項目の重複のみを排...
-
access2021 VBA メソッドまたは...
-
Access:クエリーにて集計後に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
OR と IN の違い
-
大文字/小文字の区別しないで検...
-
最新から100行のSELECT文
-
ビュー情報(user_views)の参...
-
検索対象のデータが「複数レコ...
-
Oracleのエラースタックトレー...
-
sql文のwhere句について
-
階層問い合わせで重複レコード...
-
sqlのテーブル名省略について
-
Accessから呼び出した値を比較...
-
PL/SQL デバック方法:入力を受...
-
SQLの書き方について教えてくだ...
-
コンパイルエラーが出ます。助...
-
重複レコードのある項目を比較...
-
複数パターンの集計結果を一度...
-
PHP SQL 問合せについて
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
外部参照してるキーを主キーに...
おすすめ情報