实用性命令集,有的时候对数据的一些操作肯定是在MySQL中进行,只是自己对MySQL的某些个语句使用场景不多,导致所知不多,那么收集起来就个好处,想要使用就可以直接用了
普通(条件)替换
比如:现在某个站点项目使用了新的URL地址,所以导致很多以前的数据中使用旧URL地址的图片等无法正常显示,最佳的解决办法就是将所有数据中的旧URL替换成新的。
UPDATE `table_name` SET `field_name` = replace (`field_name`,'www.xxx.net','www.xxx.com') WHERE `field_name` LIKE '%www.xxx.net%'
两表之间关联性更新(2021-08-24 更)
根据 a 表和 b 表的关联关系,将 b 表中的数据更新到 a 表中
UPDATE `pk_xxx` a
INNER JOIN (
SELECT id, pinyin
FROM `pk_xxx` ) b ON a.id = b.id
SET a.pinyin = b.pinyin;
根据 a 表和 b 表的关联关系,将 b 表中的计算结果更新到 a 表中
UPDATE tbl_users a
INNER JOIN (
SELECT user_id, sum( pay_amount ) AS amount
FROM tbl_users_pay_details
GROUP BY user_id ) b ON a.id = b.user_id
SET a.pay_total = b.amount;
或者
update tbl_users a,(
select
user_id,sum(pay_amount) as amount
from tbl_users_pay_details
group by user_id
)b
set a.pay_total=b.amount
where a.id=b.user_id
或者
UPDATE tbl_users a
SET a.pay_total = ( SELECT sum( b.pay_amount ) FROM tbl_users_pay_details b WHERE a.id = b.user_id );
转载请注明:隨習筆記 » mysql 实用性命令 – 数据更新