MySQL Update ステートメントに問題があります。テーブルには 100.000 を超えるエントリがあります。したがって、私のアプローチは成功しませんでした。(下記参照)
まず、値の数を数えたいと思います (これは簡単です)。
SELECT values1 ,count(values1) FROM table
GROUP BY value1
HAVING COUNT(value1) <= 1000;
次に、<= 1000 回しか表示されない列 values1 の一部の値を置き換えたいと考えています。
だから私はこれらのステートメントを試しました:
Update table as t
SET t.value1 = "limitAmount"
WHERE EXISTS (select value1 from
(select * from table) as f Group by f.value1
Having count(f.value1) <= 1000);
この SQL ステートメントを試したところ、次のメッセージが表示されました。
エラー コード 1205。ロック待機タイムアウトを超えました。トランザクションを再開してみてください。