共計 2790 個字符,預計需要花費 7 分鐘才能閱讀完成。
丸趣 TV 小編給大家分享一下 mysql 如何實現條件查詢語句,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
在 mysql 中,可以使用 SELECT 語句和 WHERE 關鍵字來實現條件查詢,實現語句為“SELECT 字段名 FROM 數據表 WHERE 查詢條件;”;SELECT 語句用于查詢數據,而 WHERE 關鍵字用于指定查詢條件。
本教程操作環境:windows7 系統、mysql8 版本、Dell G3 電腦。
在 mysql 中,可以使用 SELECT 語句和 WHERE 關鍵字來實現條件查詢。
SELECT 語句可以查詢數據。查詢數據是指從數據庫中根據需求,使用不同的查詢方式來獲取不同的數據,是使用頻率最高、最重要的操作。
WHERE 關鍵字用于指定查詢條件。如果需要有條件的從數據表中查詢數據,可以使用 WHERE 關鍵字。
語法格式如下:
SELECT 字段名 FROM 數據表 WHERE 查詢條件;
查詢條件可以是:
帶比較運算符和邏輯運算符的查詢條件
帶 BETWEEN AND 關鍵字的查詢條件
帶 IS NULL 關鍵字的查詢條件
帶 IN 關鍵字的查詢條件
帶 LIKE 關鍵字的查詢條件
單一條件的查詢語句
單一條件指的是在 WHERE 關鍵字后只有一個查詢條件。
例 1
在 tb_students_info 數據表中查詢身高為 170cm 的學生姓名,SQL 語句和運行結果如下。
mysql SELECT name,height FROM tb_students_info
- WHERE height=170;
+-------+--------+
| name | height |
+-------+--------+
| Susan | 170 |
+-------+--------+
1 row in set (0.17 sec)
可以看到,查詢結果中記錄的 height 字段的值等于 170。如果根據指定的條件進行查詢時,數據表中沒有符合查詢條件的記錄,系統會提示“Empty set(0.00sec)”。
例 2
在 tb_students_info 數據表中查詢年齡小于 22 的學生姓名,SQL 語句和運行結果如下。
mysql SELECT name,age FROM tb_students_info
- WHERE age
+------+------+
| name | age |
+------+------+
| John | 21 |
+------+------+
1 row in set (0.05 sec)
可以看到,查詢結果中所有記錄的 age 字段的值均小于 22 歲,而大于或等于 22 歲的記錄沒有被返回。
多條件的查詢語句
在 WHERE 關鍵詞后可以有多個查詢條件,這樣能夠使查詢結果更加精確。多個查詢條件時用邏輯運算符 AND()、OR(||)或 XOR 隔開。
AND:記錄滿足所有查詢條件時,才會被查詢出來。
OR:記錄滿足任意一個查詢條件時,才會被查詢出來。
XOR:記錄滿足其中一個條件,并且不滿足另一個條件時,才會被查詢出來。
例 3
在 tb_students_info 表中查詢 age 大于 21,并且 height 大于等于 175 的學生信息,SQL 語句和運行結果如下。
mysql SELECT name,age,height FROM tb_students_info
- WHERE age 21 AND height =175;
+--------+------+--------+
| name | age | height |
+--------+------+--------+
| Henry | 23 | 185 |
| Jim | 24 | 175 |
| Thomas | 22 | 178 |
+--------+------+--------+
3 rows in set (0.00 sec)
可以看到,查詢結果中所有記錄的 age 字段都大于 21 且 height 字段都大于等于 175。
例 4
在 tb_students_info 表中查詢 age 大于 21,或者 height 大于等于 175 的學生信息,SQL 語句和運行結果如下。
mysql SELECT name,age,height FROM tb_students_info
- WHERE age 21 OR height =175;
+--------+------+--------+
| name | age | height |
+--------+------+--------+
| Dany | 25 | 160 |
| Green | 23 | 158 |
| Henry | 23 | 185 |
| Jane | 22 | 162 |
| Jim | 24 | 175 |
| Lily | 22 | 165 |
| Susan | 23 | 170 |
| Thomas | 22 | 178 |
| Tom | 23 | 165 |
+--------+------+--------+
9 rows in set (0.00 sec)
可以看到,查詢結果中所有記錄的 age 字段都大于 21 或者 height 字段都大于等于 175。
例 5
在 tb_students_info 表中查詢 age 大于 21,并且 height 小于 175 的學生信息和 age 小于 21,并且 height 大于等于 175 的學生信息,SQL 語句和運行結果如下。
mysql SELECT name,age,height FROM tb_students_info
- WHERE age 21 XOR height =175;
+-------+------+--------+
| name | age | height |
+-------+------+--------+
| Dany | 25 | 160 |
| Green | 23 | 158 |
| Jane | 22 | 162 |
| Lily | 22 | 165 |
| Susan | 23 | 170 |
| Tom | 23 | 165 |
+-------+------+--------+
7 rows in set (0.00 sec)
可以看到,查詢結果中所有記錄的 age 字段都大于 21 且 height 字段都小于 175。tb_students_info 數據表中沒有 age 字段小于 21 且 height 字段大于等于 175 的記錄。
OR、AND 和 XOR 可以一起使用,但是在使用時要注意運算符的優先級。
查詢條件越多,查詢出來的記錄就會越少。因為,設置的條件越多,查詢語句的限制就更多,能夠滿足所有條件的記錄就更少。為了使查詢出來的記錄正是自己想要的,可以在 WHERE 語句中將查詢條件設置的更加具體。
看完了這篇文章,相信你對“mysql 如何實現條件查詢語句”有了一定的了解,如果想了解更多相關知識,歡迎關注丸趣 TV 行業資訊頻道,感謝各位的閱讀!