回答編集履歴
2
加筆修正
answer
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
OR演算子よりもAND演算子のほうが優先度が高いため、
|
2
|
+
AND演算子で結合されている方を先に評価します。
|
2
3
|
ID = 'ABCDEF' AND Pass = ''
|
3
4
|
の結果がFALSEだとしても
|
4
5
|
ORで結合される
|
5
6
|
1 =1
|
7
|
+
がTRUEなので
|
6
|
-
がTRUEなので成立してしまう、
|
8
|
+
ORは一方がTRUEなら結果TRUEなので成立してしまう、
|
7
9
|
っていう話です。
|
8
10
|
|
9
11
|
詳しくは、例えば
|
1
加筆修正
answer
CHANGED
@@ -4,4 +4,10 @@
|
|
4
4
|
ORで結合される
|
5
5
|
1 =1
|
6
6
|
がTRUEなので成立してしまう、
|
7
|
-
っていう話です。
|
7
|
+
っていう話です。
|
8
|
+
|
9
|
+
詳しくは、例えば
|
10
|
+
[MySQL :: MySQL 5.6 リファレンスマニュアル :: 12.3.1 演算子の優先順位](https://dev.mysql.com/doc/refman/5.6/ja/operator-precedence.html)
|
11
|
+
[4.2. 評価式](https://www.postgresql.jp/document/9.6/html/sql-expressions.html#syntax-express-eval)
|
12
|
+
[SQL演算子](http://otndnld.oracle.co.jp/document/products/lite10g/10.2.0/html/B19286-02/sqopr.htm)
|
13
|
+
など各処理系での優先順位・評価順位に関する記述も併せてお読みください。
|