MySQLのSELECTクエリでのANDおよびOR演算子の優先度?
ANDは、MySQLselectクエリのOR演算子よりも優先度が高くなります。
MySQLがどのようにAND演算子を最優先するかを確認しましょう。
クエリは次のとおりです
mysql> select 0 AND 0 OR 1 as Result;
以下は出力です
+--------+ | Result | +--------+ | 1 | +--------+ 1 row in set (0.00 sec)
OR演算子の優先度が最も高いと考えている場合、MySQLは上記のクエリを次のようにまとめます。
クエリは次のとおりです
select 0 AND (0 OR 1) as Result
まず、0 OR 1を解くと、結果1が得られます。その後、0と1で結果0が得られます。
ただし、0を取得し、出力が1であるため、上記のケースは適切ではありません。したがって、上記のクエリでは、結果1を取得するためにORよりもANDが最高の優先度を取得します。
クエリは次のとおりです
select 0 AND 0 OR 1 as Result
まず、AND演算子を最初に解きます。 0AND0は結果0を返します。
その後、0または1で結果1が得られます。
これで、正確な出力が得られます。
-
単一のクエリでのMySQLUNIONSELECTおよびIN句
まずテーブルを作成しましょう- mysql> create table DemoTable1 -> ( -> StudentId int, -> StudentName varchar(20) -> ); Query OK, 0 rows affected (1.24 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1 values(210,'Adam'
-
行の値を合計して結果を並べ替えるMySQLクエリ?
このために、ORDERBY句とともにGROUPBYを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1499 -> ( -> StudentName varchar(20), -> StudentMarks int -> ); Query OK, 0 rows affected (0.46 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert in