次のスキーマがあります。
id | order_ref | description | price
現在、次の重複した問題があります。
1 | 34567 | This is the description | 19.99
2 | 34567 | This is the description | 13.99
これは、インポートしたデータに各項目の説明が重複していたためです。最初の行を保持し、その後 (最大約 20 行) の説明を「AS ABOVE」に更新する方法はありますか?
1 | 34567 | This is the description | 19.99
2 | 34567 | - AS ABOVE - | 13.99
ありがとう
- - - -更新しました
UPDATE documents_orders_breakdown
SET `desc` = '- AS ABOVE -'
WHERE NOT id IN (SELECT id
FROM documents_orders_breakdown AS D
WHERE D.`desc` <> `desc`
ORDER BY D.id
LIMIT 1)
しかし、これは [Err] 1235 を返します - このバージョンの MySQL はまだ「LIMIT & IN/ALL/ANY/SOME subquery」をサポートしていません
- - - - 更新しました
UPDATE documents_orders_breakdown
SET `desc` = '- AS ABOVE -'
WHERE NOT id IN (SELECT MIN(id)
FROM documents_orders_breakdown AS t
WHERE t.`desc` = `desc`)
これは [Err] 1093 を返すようになりました - FROM 句で更新するターゲット テーブル 'documents_orders_breakdown' を指定できません