MySQL 中的“where 1=1”語句是什麼?


在 MySQL 中,“Where 1=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 始終為真,因此將顯示所有名稱。

此查詢如下所示:

mysql> select name from WhereConditon where 1=1;

以下是上述查詢的輸出

+-------+
| name  |
+-------+
| John  |
| Smith |
| Bob   |
| David |
+-------+
4 rows in set (0.00 sec)

更新於: 2020-06-24

2K+ 閱讀量

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.