1. 修改单表记录
update 表名
set 列=新值, 列=新值
where 筛选条件;
# 修改beauty表中姓唐的电话修改为13800000000
UPDATE beauty
SET phone = '13800000000'
WHERE NAME LIKE '唐%';
#案例二:修改boys表中id=2的名称为张飞,魅力值为10
UPDATE boys
SET boyName='张飞',userCP = 10
WHERE id=2;
2. 修改多表的记录
sql92:
update 表1 别名, 表2 别名
set 列=值,...
where 连接条件
and 筛选条件;
sql99:
update 表1 别名
inner|left|right join 表2 别名
on 连接条件
set 列=值,...
where 筛选条件;
#修改张无忌的女朋友的手机号为114
UPDATE boys bb
INNER JOIN beauty gg
ON bb.`id` = gg.`boyfriend_id`
SET phone='117'
WHERE bb.`id`= 1;
# 修改没有男朋友的女神男朋友编号为张飞
SELECT * FROM beauty gg
WHERE gg.`boyfriend_id` IS NULL;
SELECT id
FROM boys bb
WHERE bb.`boyName`='张飞';
UPDATE beauty gg
SET gg.`boyfriend_id` = (
SELECT id
FROM boys bb
WHERE bb.`boyName`='张飞'
)
WHERE gg.`boyfriend_id` IS NULL;
网友评论