MySQL は重複データを削除して最小の ID ソリューションを維持します

MySQL は重複データを削除して最小の ID ソリューションを維持します

オンラインで検索して重複データを削除し、ID が最小のデータだけを残します。方法は次のとおりです。

消去
から
  人々
どこ
  人名 IN (
    選択
      人名
    から
      人々
    グループ化
      人名
    持つ
      count(人名) > 1
  )
そして人々は(
  選択
    min(人ID)
  から
    人々
  グループ化
    人名
  持つ
    count(人名) > 1
)

自分で使用すると、エラーメッセージが表示されます:

delete from tb where id in (SELECT max(id) from tb GROUP BY user HAVING count(user)>1)

[Err] 1093 - You can't specify target table 'XXX' for update in FROM clause

原因はまだわかっていません。

次に、操作を分散する方法を見つけます。まず、重複するユーザーを含むデータをフィルター処理し、次に max() を使用して大きい行を選択します。

tb GROUP BY userからmax(id)を選択し、count(user)>1とする

次に、取得したmax(id)に従って冗長データを1つずつ削除します。

id=xx の tb から削除

これは愚かな方法です。一時的に問題を解決しましょう。

要約する

上記は、Mysql で重複データを削除し、エディターが導入した最小の ID を保持するためのソリューションです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。エディターがすぐに返信します。

以下もご興味があるかもしれません:
  • MySQL のデータテーブルをクリアする例と分析
  • MySQL クエリの重複データ (重複データを削除し、ID が最も小さいデータのみを保持します)
  • MySQLで重複データを見つけて削除し、1つの例だけを残す方法の詳細な説明
  • Mysql はテーブル内の古いデータを定期的にクリアし、いくつかのデータを保持します (推奨)

<<:  Linuxで現在のスクリプトの実際のパスを取得する方法

>>:  初めてDockerイメージを構築、実行、公開、取得するための詳細な手順

推薦する

MySQL で lower_case_table_names を記録する際の落とし穴の詳細な説明

1 原因プロジェクトがデータベースを移行して再起動した後、「T_AAAテーブルが存在しません」という...

MySQL UPDATE ステートメントの「典型的な」落とし穴

目次1. 問題のあるSQL文たとえば、次の図のような質問をした人がいました。 問題は次のように要約で...

vue ディレクティブ v-bind の使用と注意点

目次1. v-bind: 要素の属性にデータをバインドできる2. v-bind: は次のように省略で...

VMWARE で Centos8 仮想マシンをコピーすることによって発生する IP 損失の問題の解決策

VMwareでcentos8サービスをインストールしてコピーすると、次の問題が発生します。 コピー前...

タブバーの切り替え効果を実現するJavaScript

タブバー: 異なるタブをクリックすると異なるコンテンツが表示され、クリックしたタブのスタイルが変更さ...

MySQL 5.7.20 Green Edition のインストールの詳細なグラフィックチュートリアル

まず、MySQL とは何かを理解しましょう。 MySQL は、スウェーデンの会社 MySQL AB ...

Vue3.0のさまざまなリスニング方法の包括的な概要

目次リスナー1.ウォッチエフェクト2.見る1.1 聴くための最初の方法1.2 聞く2つ目の方法1.3...

MySQLの基本の共通機能

目次1. 共通機能分類1.1 単一行関数: 1.2 グループ化機能: 2. 単一行関数3. 数学関数...

jQueryは何に使われるのですか?jQueryは実際にはjsフレームワークです

jQuery 入門jQuery ライブラリは、簡単なマークアップ行を使用して Web ページに追加で...

RoughViz を使用して Vue.js でスケッチされたチャートを視覚化する方法

導入チャートは、データ セットを読みやすくし、その各部分を区別しやすくするために使用されるデータのグ...

Linux カーネルプログラミングにおけるコンテナの of() 関数の紹介

序文Linux カーネルプログラミングでは、マクロ関数 container_of(ptr, type...

Dockerを使用してElasticsearchクラスターを素早くデプロイする方法

この記事では、 Dockerコンテナ ( docker-composeを使用してオーケストレーション...

CSS フロントエンドページレンダリング最適化属性 will-change の具体的な使用法

序文スクロールやサイズ変更などのスクロール イベントがトリガーされると、トリガーの頻度が非常に高くな...

element-plus でオンデマンドインポートとグローバルインポートを実装する方法

目次オンデマンドインポート:グローバルインポートオンデマンドインポート:プラグインをインストールする...

Linux 環境に mysql5.7.36 データベースをインストールするチュートリアル

ダウンロードアドレス: https://dev.mysql.com/downloads/mysql/...