1
13
MySQL执行“从左到右”的评估,并“查看”新值。 (5.0.45-community-nt-log mysql社区版测试) 此外,从MySQL手册:“单表更新分配通常从左到右进行评估。对于多个表更新,不能保证以任何特定顺序执行分配。” 现在,“一般”是相当模糊的,“没有保证”是非常糟糕的,因为评价的顺序是重要的。 所以,为了回答这个问题:行为是由“SQL标准”指定的还是仅仅是一种约定? 更新:获取了sql92规范,该规范在“13.10 update语句:搜索”item“6)在更新T的任何行之前,对T的每一行(值表达式)S进行了有效的评估。” imho不是绝对明确,但足以考虑到标准是不“看到”自己更新的结果。 考虑到您的例子,Oracle、PostgreSQL和Interbase是如何做到这一点的。 |
2
6
这个
以下代码只交换列:
|
3
-1
对表的写入必须发生在完成读取时正在进行的事务之后。 |
Andrew · 如何根据字母排序顺序设置int值 6 年前 |
BCH · 从Select更新-语法和概念检查(mySQL) 6 年前 |
Athafoud · 在子查询中的位置-选择works但不更新[关闭] 6 年前 |
user6631314 · MYSQL中记录更新的语法 6 年前 |
Elizabeth · SQL删除触发器不工作 6 年前 |
DarkLight · TSQL迭代表中的子集-根据组更新值 6 年前 |