关于update和order by执行顺序问题

来源:3-1 数据操作语言:UPDATE语句

慕沐8326001

2019-10-04 21:39:52

update t_emp set empno=empno+1,mgr=mgr+1
order by empno desc
order by 不是最后才执行的吗,是对最终呈现的结果有影响,视频中老师说,如果有编号为7000,7001,使用order by可以先排序,在修改是什么意思,难道在这里顺序是先执行order by子句,在执行update子句吗



写回答

1回答

时间,

2019-10-08

同学,你好。

1、主键id默认是升序排序的,在对主键值进行加1操作时,若为7000加1后为7001,但原id中是存在7001的,会造成主键冲突。因此可以先通过order by 对员工编号进行降序排列,再执行SET加1操作。

2、在select语句中,order by是最后执行的,会对返回的数据进行排序

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

0

0 学习 · 2669 问题

查看课程