mysql 語句 條件查詢

2021-09-25 04:18:12 字數 3510 閱讀 8814

#高階2:條件查詢

/*語法:

select 

查詢列表

from

表名where

篩選條件;

分類:一、按條件表示式篩選

簡單條件運算子:> < = != <> >= <=

二、按邏輯表示式篩選

邏輯運算子:

作用:用於連線條件表示式

&& || !

and or not

&&和and:兩個條件都為true,結果為true,反之為false

||或or: 只要有乙個條件為true,結果為true,反之為false

!或not: 如果連線的條件本身為false,結果為true,反之為false

三、模糊查詢

like

between and

inis null

*/#一、按條件表示式篩選

#案例1:查詢工資》12000的員工資訊

select 

*from

employees

where

salary>12000;

#案例2:查詢部門編號不等於90號的員工名和部門編號

select 

last_name,

department_id

from

employees

where

department_id<>90;

#二、按邏輯表示式篩選

#案例1:查詢工資z在10000到20000之間的員工名、工資以及獎金

select

last_name,

salary,

commission_pct

from

employees

where

salary>=10000 and salary<=20000;

#案例2:查詢部門編號不是在90到110之間,或者工資高於15000的員工資訊

select

*from

employees

where

not(department_id>=90 and  department_id<=110) or salary>15000;

#三、模糊查詢

/*like

between and

inis null|is not null

*/#1.like

/*特點:

①一般和萬用字元搭配使用

萬用字元:

% 任意多個字元,包含0個字元

_ 任意單個字元

*、#案例1:查詢員工名中包含字元a的員工資訊

select 

*from

employees

where

last_name like '%a%';#abc

#案例2:查詢員工名中第三個字元為e,第五個字元為a的員工名和工資

select

last_name,

salary

from

employees

where

last_name like '__n_l%';

#案例3:查詢員工名中第二個字元為_的員工名

select

last_name

from

employees

where

last_name like '_$_%' escape '$';

#2.between and

/*①使用between and 可以提高語句的簡潔度

②包含臨界值

③兩個臨界值不要調換順序

#案例1:查詢員工編號在100到120之間的員工資訊

select

*from

employees

where

employee_id >= 120 and employee_id<=100;

#----------------------

select

*from

employees

where

employee_id between 120 and 100;

#3.in

/*含義:判斷某字段的值是否屬於in列表中的某一項

特點:①使用in提高語句簡潔度

②in列表的值型別必須一致或相容

③in列表中不支援萬用字元

*/#案例:查詢員工的工種編號是 it_prog、ad_vp、ad_pres中的乙個員工名和工種編號

select

last_name,

job_id

from

employees

where

job_id = 'it_prot' or job_id = 'ad_vp' or job_id ='ad_pres';

#------------------

select

last_name,

job_id

from

employees

where

job_id in( 'it_prot' ,'ad_vp','ad_pres');

#4、is null

/*=或<>不能用於判斷null值

is null或is not null 可以判斷null值

*/#案例1:查詢沒有獎金的員工名和獎金率

select

last_name,

commission_pct

from

employees

where

commission_pct is null;

#案例1:查詢有獎金的員工名和獎金率

select

last_name,

commission_pct

from

employees

where

commission_pct is not null;

#----------以下為×

select

last_name,

commission_pct

from

employees

where 

salary is 12000;

#安全等於  <=>

#案例1:查詢沒有獎金的員工名和獎金率

select

last_name,

commission_pct

from

employees

where

commission_pct <=>null;

#案例2:查詢工資為12000的員工資訊

select

last_name,

salary

from

employees

where 

salary <=> 12000;

#is null pk <=>

is null:僅僅可以判斷null值,可讀性較高,建議使用

<=>    :既可以判斷null值,又可以判斷普通的數值,可讀性較低

mysql條件查詢語句

目錄 1 去重查詢distinct 2 使用and和or進行多條件查詢 2.1 and 2.2 or 3 區分大小寫查詢binary 4 查詢排序 4.1 公升序asc 預設為公升序 4.2 降序desc 5 命令幫助help distinct在表查詢時去除表中重複的資料。例如 select dis...

mysql語句條件篩選 MySQL 條件查詢

語法 執行順序 312 select 查詢列表 from 表名where 篩選條件 分類 按條件表示式篩選 條件運算子 按邏輯表示式篩選 邏輯運算子 用於連線條件表示式 和and 兩個條件都為true,結果為true,反之為false 和or 只要有乙個條件為true,結果為true,反之為fals...

MySQL條件查詢語句基礎操作

select 欄位1,欄位2.from 表名 where 條件 例 select from students where id 1 比較運算子 例1 查詢小喬的年齡 select age from students where name 小喬 例2 查詢20歲以下的學生 select from st...