4/7 SELECT语句:过滤(组合WHERE子句)
生活随笔
收集整理的這篇文章主要介紹了
4/7 SELECT语句:过滤(组合WHERE子句)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
| 1 | AND操作符 | 給WHERE子句附加條件 |
| 2 | OR操作符 | 檢索匹配任一條件的行 |
| 3 | 計算次序 | 優先級:()> AND > OR |
| 4 | IN操作符 | 指定條件范圍,功能與OR相當 |
| 5 | NOT IN | 否定它之后所跟的任何條件 |
以下為數據庫SQLTEST中的三張表,其結構和內容如下:
1.AND操作符
為了通過不止一個列進行過濾,可使用AND操作符給WHERE子句附加條件。
mysql> SELECT Stu_id,Lesson_id,Score-> FROM t_score-> WHERE Lesson_id = 'L001' AND Score > 85; +--------+-----------+-------+ | Stu_id | Lesson_id | Score | +--------+-----------+-------+ | 1 | L001 | 90 | +--------+-----------+-------+2.OR操作符
OR操作符:指示MySQL檢索匹配任一條件的行。
mysql> SELECT Stu_id,Lesson_id,Score-> FROM t_score-> WHERE Lesson_id = 'L002' OR Score > 80; +--------+-----------+-------+ | Stu_id | Lesson_id | Score | +--------+-----------+-------+ | 1 | L001 | 90 | | 1 | L002 | 86 | | 2 | L001 | 84 | | 3 | L003 | 85 | | 4 | L005 | 98 | +--------+-----------+-------+3.計算次序
優先級:()> AND > OR
mysql> SELECT *-> FROM t_stu_profile-> WHERE (Gender='F' AND Age>16) OR (Gender='M' AND Age<16); +--------+----------+--------+------+----------+ | Stu_id | Stu_Name | Gender | Age | Class_id | +--------+----------+--------+------+----------+ | 5 | 王五 | F | 17 | 0614 | +--------+----------+--------+------+----------+4.IN操作符
IN操作符:用來指定條件范圍,范圍中的每個條件都可以進行匹配;
IN取合法值得由逗號分隔的清單,全都括在圓括號中;
其實,IN操作符與OR操作符完成相同的功能。
IN操作符的優點:
①在使用長的合法選項清單時,IN操作符的語法更清楚且更簡單;
②在使用IN時,計算的次序更容易管理(因為使用的操作符更少);
③IN操作符一般比OR操作符清單執行更快;
④IN的最大優點是可以包含其他SELECT語句,使得能夠更動態地建立WHERE子句。
5.NOT操作符
NOT操作符:否定它之后所跟的任何條件;
MySQL中的NOT:MySQL支持使用NOT對IN、BETWEEN和EXISTS子句取反,這與多數其他DBMS允許使用NOT對各種條件取反有很大的差別。
總結
以上是生活随笔為你收集整理的4/7 SELECT语句:过滤(组合WHERE子句)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3/7 SELECT语句:过滤(WHER
- 下一篇: 5/7 SELECT语句:过滤(LIKE