假设课程表courses有id、name字段。发现name有重复,且重复最大数量为2。我们对id小的一条记录的name更新为name+其它字符。
1、将courses全部重复name统计写入临时表tempname
2、子查询找到课程表中name有重复,且重复是最小id的哪条记录id
select id from courses awhere id = (select min(id) from courses t where t.name = a.name)and name in (select name from tempname)2、子查询联表更新,如下:
update courses, (select id from courses awhere id = (select min(id) from courses t where t.name = a.name)and name in (select name from tempname)) tbset courses.name=CONCAT(courses.name,'-',RIGHT(courses.id,2))where courses.id =tb.id | 留言与评论(共有 0 条评论) “” |