[解決済み] MySQLで重複した行を削除する
2022-03-23 03:39:03
質問
以下のフィールドを持つテーブルがあります。
id (Unique)
url (Unique)
title
company
site_id
ここで、同じ行を削除する必要があります。
title, company and site_id
. これを実現する一つの方法として、以下のSQLとスクリプト(
PHP
):
SELECT title, site_id, location, id, count( * )
FROM jobs
GROUP BY site_id, company, title, location
HAVING count( * ) >1
このクエリを実行した後、サーバーサイドのスクリプトを使用して重複を削除することができます。
しかし、私はこれがSQLクエリを使用してのみ行うことができるかどうかを知りたいです。
どのように解決するのですか?
本当に簡単なのは
UNIQUE
のインデックスは3つのカラムで構成されています。 このとき
ALTER
ステートメントに
IGNORE
キーワードを使用します。 こんな感じで。
ALTER IGNORE TABLE jobs
ADD UNIQUE INDEX idx_name (site_id, title, company);
これで、重複する行がすべて削除されます。 付加的な利点として、将来の
INSERTs
が重複している場合はエラーになります。 いつものように、このようなことを実行する前に、バックアップを取ることをお勧めします...
関連
-
SQL集計、グループ化、ソート
-
[解決済み】MySQL エラー 1093 - FROM 句で更新のターゲット テーブルを指定できません。
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] SQLテーブルで重複する値を検索する
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?
-
[解決済み] 重複した行を削除するにはどうすればよいですか?
-
[解決済み] MySQL で特定のカラム名を持つすべてのテーブルを見つけるにはどうすればよいですか?
-
[解決済み] MySQLの重複レコードを検索する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
mysqlにおけるvarcharの日付比較とソートの実装
-
MySQLのNULLについて解説した記事
-
MySQLはこのようなUpdateステートメントを書くべきではありません
-
MySQLで正規表現を使う 詳細
-
[解決済み] ユニークなテーブル/エイリアスではない
-
Mysql がエラー 1241 を報告 オペランドは 1 つのカラムを含む必要があります。
-
[解決済み] どのトランザクションが「テーブルメタデータのロック待ち」状態を引き起こしているかを確認するにはどうすればよいですか?
-
[解決済み] SQLを使用してSUMとSUBTRACTを行うには?
-
[解決済み] MySQLデータベースの名前を素早く変更する(スキーマ名を変更する)方法は?
-
[解決済み] MySQLで1行を除くすべての重複行を削除しますか?[重複している]