我有一张共享相同区号的城市表:
367 01451 Harvard Worcester Massachusetts MA 978 Eastern
368 01452 Hubbardston Worcester Massachusetts MA 978 Eastern
369 01453 Leominster Worcester Massachusetts MA 978 Eastern
该表有多个区号,都带有多个城市。
我只想从每个区号中选择一个城市,然后从重复的区号中删除所有多余的城市。什么是实现此目的的最佳查询?
我相信:
Mysql4: SQL for selecting one or zero record
接近我的需求,但并没有完全了解这些答案的工作方式。
注意“ 978”行是“ area_code”行,表名称是“ zip_code”。
最佳答案
DELETE c.*
FROM zip_code c
JOIN (
SELECT area_code, MIN(id) AS mid
FROM zip_code
GROUP BY
area_code
) co
ON c.area_code = co.area_code
AND c.id <> co.mid
关于mysql - MySQL:当其他人具有相同数据时选择一个记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1099123/