使用select語句的where子句指定過濾條件。通常情況下,我們查詢資料會根據特定條件和情況提取表中的部分資料。並不會查詢表中所有的資料。
語法格式:where子句放在from子句後面出現。
where子句操作符
操作符說明=等於
<>
不等於!=
不等於<
小於<=
小於等於
>
大於》=
大於等於
between指定在2個值之間
過濾單個值
#=: 查詢員工名為ngao的員工資訊
select
a.id,
a.last_name,
a.first_name,
a.salary
from
s_emp a
where
a.last_name = 'ngao';
#<>: 查詢不屬於41部門的員工資訊
select
a.id,
a.last_name,
a.first_name,
a.salary,
a.dept_id
from
s_emp a
where
a.dept_id <> 42;
#!=:查詢不屬於41部門的員工資訊
select
a.id,
a.last_name,
a.first_name,
a.salary,
a.dept_id
from
s_emp a
where
a.dept_id != 42;
#<: 查詢工資大於1500的員工資訊
select
a.id,
a.last_name,
a.first_name,
a.salary,
a.dept_id
from
s_emp a
where
a.salary >1500;
#between and : 查詢工資在 1100到1400之間的員工資訊
select
a.id,
a.last_name,
a.first_name,
a.salary,
a.dept_id
from
s_emp a
where
a.salary between 1100 and 1400;
空值過濾
概念:在乙個列不包含值時,稱為空值null。null 無值,與字段包含0 ,空字串或者空格不同。
#查詢員工工資為空的員工資訊
select
a.id,
a.last_name,
a.salary
from
s_emp a
where
a.salary is null;
#查詢員工的經理不為空的員工資訊
select
a.id,
a.last_name,
a.manager_id
from
s_emp a
where
a.manager_id is not null;
邏輯操作符
and 操作符:
#檢視員工部門id為41且職位名稱為stock clerk(存庫管理員)的員工id和名字
select
id,last_name,
dept_id,
title
from
s_emp
where
dept_id = 41
and title = 'stock clerk';
or 操作符#檢視員工部門為41 或者 44號部門員工id、名字和部門號
select
a.id,
a.last_name,
a.dept_id
from
s_emp a
where
a.dept_id = 41
or a.dept_id = 42;
and 和 or 組合:#檢視員工部門為41 或者 44號部門 且工資大於1000的員工id和名字
select
a.id,
a.last_name,
a.dept_id,
a.salary,
a.title
from
s_emp a
where
a.salary > 1000
and (a.dept_id = 41 or a.dept_id = 44);
#練習:檢視員工部門為41且工資大於1000 或者 44號部門的員工id和名字
select
a.id,
a.last_name,
a.dept_id,
a.salary,
a.title
from
s_emp a
where
a.salary > 1000
and a.dept_id = 41 or a.dept_id = 44;
in 操作符#檢視員工號1,3,5,7,9員工的工資
select
a.id,
a.last_name
from
s_emp a
where
a.id in (1, 3, 5, 7, 9);
not 操作符#查詢員工工資不在1000到1500範圍的員工資訊
select
a.id,
a.last_name,
a.salary
from
s_emp a
where
a.salary not between 1000 and 1500;
#查詢員工不在41或42或43部門的員工資訊
select
a.id,
a.last_name,
a.dept_id
from
s_emp a
where
a.dept_id not in (41, 42, 43);
like 操作符#檢視員工名字以n或n字母開頭的員工的資訊
#注:mysql 預設查詢時,不區分大小寫。可以通過在建立表時,新增 binary屬性進行區分。
#或者在where子句中新增 binary關鍵字 格式: where binary ...
select
a.id,
a.last_name
from
s_emp a
where
a.last_name like 'n%';
#檢視員工名字以大寫n字母結尾的員工的資訊
select
a.id,
a.last_name
from
s_emp a
where binary
a.last_name like '%n';
#檢視員工名字第三個字母是a員工的資訊
select
a.id,
a.last_name
from
s_emp a
where binary
a.last_name like '__a%';
MySQL資料庫 過濾資料
資料庫一般包含大量的資料,但是我們大部分情況下並不需要檢索所有的資料,只要檢索部分資料就行了。1.使用where 子句 在select子句中,資料根據where子句中指定的搜尋條件進行過濾。where子句在表名 from子句 之後給出,如下所示 select users.user name,user...
MySQL資料庫 過濾資料(一)
資料庫一般包含大量的資料,但是我們大部分情況下並不需要檢索所有的資料,只要檢索部分資料就行了。只檢索所需要資料需要指定搜尋條件,搜尋條件也稱為過濾條件。part 1 使用where 子句 在select子句中,資料根據where子句中指定的搜尋條件進行過濾。where子句在表名 from子句 之後給...
MySQL資料庫 萬用字元過濾
萬用字元 wildcard 用來匹配值的一部分的特殊字元。搜尋模式 search pattern 由字面值 萬用字元或兩者組合構成的搜尋條件。最常使用的萬用字元是百分號 在搜尋串中,表示任何字元出現任意次數。例如,為了找出所有以詞dll起頭的產品名,可使用以下select語句 萬用字元可在搜尋模式中...