![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
重複するレコードを調べるSQL
初歩的な質問ですみません!
重複するレコードを調べるために以下のようなSQLを作ったのですが、
遅くて困っています。
もっと速くする方法があれば教えてください!
異なるカテゴリーでも商品コードが重複しているものがないかを探すSQLです。
SELECT A.商品コード, A.X, B.カテゴリー
FROM
(SELECT COUNT(商品コード) X, 商品コード
FROM テーブルA
WHERE 追加年月 = 201008
GROUP BY 商品コード) A,
(SELECT 商品コード, カテゴリー
FROM テーブルA
WHERE 追加年月 = 201008
) B "
WHERE A.X >= 2
AND B.商品コード = A.商品コード
No.2ベストアンサー
- 回答日時:
対象のDB、バージョン、テーブル構造、インデックスの有無くらいは最低限書きましょう。
また、どれくらいの件数でどれくらいの時間がかかっているのかも書くといいと思います。
下記のSQLがそちらの環境で使えるかわかりませんが、テーブルの読み込みが1回で済むので
最初のSQLよりは早いのではないかなと思います。
SELECT
*
FROM
(SELECT 商品コード,COUNT(*) OVER(PARTITION BY 商品コード) X, カテゴリー
FROM テーブルA
WHERE 追加年月 = 201008)
WHERE X >= 2;
No.3
- 回答日時:
SELECT B.商品コード,A.X,B.カテゴリー
FROM (SELECT 商品コード,COUNT(商品コード) X
FROM テーブルA WHERE 追加年月=201008
GROUP BY 商品コード HAVING COUNT(商品コード)>1) A
INNER JOIN テーブルA B
ON A.商品コード=B.商品コード
感覚的にはこのようなSQLになると思います。
サブクエリの方でレコード数を絞っておくべきで、結合後の
結果に対してWHERE句を割り当てるより高速です。
ただ、これで目に見えるほど改善されるかどうかは不明です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 日本の全市区町村を人口密度が低 1 2023/06/18 19:51
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- その他(買い物・ショッピング) JANコードの登録について 1 2022/07/23 14:19
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- Excel(エクセル) 重複データの抽出について 2 2023/07/21 14:52
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
ACCESS 一つのフィールドに複...
-
行方向のデータを横に並べる
-
下記のsqlで取得されるレコード...
-
sqlで質問です。 Aテーブルは店...
-
重複するキーから一番古い年月...
-
3つのテーブルから条件に一致し...
-
ある条件のSELECT文の作成について
-
2つのテーブルから条件に一致...
-
Accessにインポートしたら並び...
-
SELECT時の行ロックの必要性に...
-
sqlserverで集計結果をUPDATEし...
-
ACCESS2007 フォーム 「バリア...
-
Access VBA Me.Requery レコー...
-
ACCESSのSQLで、NULLかNULLでな...
-
SELECT文でのデッドロックに対...
-
クエリのキャンセルがいつにな...
-
Accessでクエリを完了できませ...
-
Access 1レコードずつcsvで出力...
-
データの二重表示の原因
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
重複するキーから一番古い年月...
-
ACCESS 一つのフィールドに複...
-
行方向のデータを横に並べる
-
PLSQLの識別子エラー
-
VIEWでテーブルの集計結果...
-
Accessでフィールドを比較した...
-
Accessユニオンクエリーで2つ...
-
主キーの変更
-
ACCESSのコンパイルエラーについて
-
片方だけ抽出する方法(SQL)
-
【Access】順位を付けたい
-
[Oracle] UPDATE分の副問い合わ...
-
テーブル値関数経由でのデータ更新
-
ACCESS インポート時の重複チ...
-
ACCESS2000でDCount関数の使い方
-
Access2002の集計レポート?
-
商品コード番号を入力すると商...
-
Inner join と Left joinの明...
おすすめ情報