场景:需要在一张表中,统计电话号码出现的次数,并更新计数。
方案一:在java中循环一条一条记录执行(慢,还要写代码)
方案二:一句sql完成update(实用,推荐)
如下图,着重需要更新project_info表中count字段(即phone重复次数统计):
sql如下,组合一下,然后连接查询并更新数据
UPDATE project_info pi,
(SELECT
phone, COUNT(*) count
FROM
project_info
GROUP BY phone) re
SET
pi.`count` = re.`count`
WHERE
pi.phone = re.phone
因为平时实用场景中遇到过几次,每次都卡壳纠结,期初用方案一,然后百度实战出方案二
挺实用的技巧!记录以备下次翻阅