MySQL では、「Where 1=1」ステートメントは常に true であるため、テーブル内のすべての行が生成されます。 1つ ステートメントをよりよく理解するために、以下に例を示します。 -
まず、create コマンドを使用してテーブルを作成します。以下が与えられます -
mysql> CREATE table WhereConditon -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.43 sec)
テーブルが正常に作成された後、insert コマンドを使用していくつかのレコードを挿入します。 このクエリは次のとおりです。 -
mysql> INSERT into WhereConditon values(1,'John'); Query OK, 1 row affected (0.16 sec) mysql> INSERT into WhereConditon values(2,'Smith'); Query OK, 1 row affected (0.15 sec) mysql> INSERT into WhereConditon values(3,'Bob'); Query OK, 1 row affected (0.16 sec) mysql> INSERT into WhereConditon values(4,'David'); Query OK, 1 row affected (0.13 sec)
これで、レコードが正常に挿入され、テーブル内のレコード数が表示されます。 select ステートメントを使用して確認してください。以下に示す -
mysql> SELECT * from WhereConditon;
上記のクエリを実行すると、次のようにテーブル内のすべてのレコードが表示されます。 -
+------+-------+ | id | name | +------+-------+ | 1 | John | | 2 | Smith | | 3 | Bob | | 4 | David | +------+-------+ 4 rows in set (0.00 sec)
ここで、ステートメント 1=1 が select ステートメントとともに使用されて表示されます。 テーブル。1=1 は常に true として、すべての名前が表示されます。
これに対するクエリは次のとおりです -
mysql> select name from WhereConditon where 1=1;
以下は、上記のクエリの出力です。
+-------+ | name | +-------+ | John | | Smith | | Bob | | David | +-------+ 4 rows in set (0.00 sec)
以上がMySQL の「where 1=1」ステートメントとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。