我没有你的表结构和数据,所以随便找了张表作为例子,你看懂了改一下sql就可以了:
目的:修改roomPeople=20的倒数第三条数据的roomType字段为999,roomId为主键
这是原始数据:很明显我们要修改的数据roomId为105
修改步骤:
1、找到roomPeople=20的数据:
2、取最后3条数据:
3、获得要修改的目标行的roomId字段
4、根据查找到的主键进行修改 *** 作:
5、修改后数据为:
很明显,目的达到了,roomId为105的数据的roomType字段被修改为了999
所有sql如下:
#原始数据-按roomId升序排序select roomId,roomType,roomPeople from room15
#修改roomPeople=20的倒数第三条数据的roomType字段为999
UPDATE room15
set roomType=999
where roomId=(
select t1.roomId
from (
select roomId,roomType,roomPeople
from room15
where roomPeople=20
ORDER BY roomId desc
LIMIT 3) as t1
ORDER BY roomId
LIMIT 1
)
#修改后数据-按roomId升序排序
select roomId,roomType,roomPeople from room15
楼主若觉得回答有所帮助,望采纳,谢谢!
在更新表的使用where条件就行了,示例sql,UPDATE aaa SET a1= a1/10000 WHERE a2= '万';
执行这条sql时,先将条件设置详细些,比如a2 = '万' and 主键 = 1 什么的,选择一条数据试试结果,确保不会因为误 *** 作,将表中的数据修改。最好在修改数据前,将修改的数据找出来,执行一个备份。
update dede_addonimages set pagestyle=1 where pagestyle=2如果你确信是要把所有记录的三个字段值都改,那么
update dede_addonimages set pagestyle=1, isrm=1, pagepicnum=2 where (这里看情况加条件)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)