SQL - OR 条件的顺序重要吗?

2024-04-03

我必须选择符合的一行condition1 OR condition2。然而,condition1是优选的。如果有两行,第一行相交的位置condition1(并且不满足条件2)并且第二个满足condition2(并且不满足condition1)那么第一个应该被返回。

所以对于 SQL:

SELECT * FROM table WHERE col1 = 1 OR col2 = 5 LIMIT 1

是否会返回满足条件的行col1 = 1第一的?或者它会以随机顺序返回行?如果它是随机的那么如何实现我想要的?我必须使用这样的东西?:

SELECT * FROM table WHERE col1 = 1 OR col2 = 5
ORDER BY (col1 = 1)::boolean DESC LIMIT 1

WHERE 子句中条件的顺序不会影响结果的优先级。您必须使用 ORDER BY 子句来做到这一点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL - OR 条件的顺序重要吗? 的相关文章

随机推荐