條件查詢(mysql 36)

2021-09-12 01:32:09 字數 3278 閱讀 1949

#高階2:條件查詢

/*語法:

select

查詢列表

from

表名where

篩選條件

分類: 一,按條件表達篩選

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

二,按邏輯表示式篩選

邏輯運算子:

&& || !

and or not

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

||和or: 如果有乙個為true,結果為 true,反之為flase

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

三,模糊查詢

like

between and

in is null

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

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

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:查詢部門編號z不是在90到110,或者工資高於15000的員工資訊

select

*from

employees

where

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

#三,模糊查詢

#1,like

/*特點:

1,一般和萬用字元搭配使用

萬用字元:

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

_任意單個字元

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

select

*from

employees

where

last_name like '%a%';

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

select

last_name,

salary

from

employees

where

last_name like '__e_a%';

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

select

last_name

from

employees

where

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

#2.between and

/*1,使用 between and 可以提高語句簡潔度

2,包含臨界值

3,兩個臨界不要調換順序

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

select

*from

employees

where

employee_id>=100 and employee_id<=120;

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

select

*from

employees

where

employee_id between 100 and 120;

#3,in

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

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

2,in列表的值型別必須統一或相容

3,*/

#案例:查詢員工的工種編號是 it_ad_vp,ad_presh中的乙個員工名和工種編號

select

last_name,

job_id

from

employees

where

job_id = 'it_prot' or job_id = 'ad_vp' or job_id ='adpres';

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

select

last_name,

job_id

from

employees

where

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

#4,is null

/*+或《不能》用於判斷null值

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

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

select

last_name,

commission_pct

from

employees

where

commission_pct is null;

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

select

last_name,

commission_pct

from

employees

where

commission_pct is not null;

#安全等於 <=>

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

select

last_name,

commission_pct

from

employees

where

commission_pct <=>null;

#a案例2:查詢工資為12000

select

last_name,

salary

from

employees

where

salary <=>12000;

#is null pk <=>

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

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

MySQL 36 內部臨時表

36.1 mysql中的兩種臨時表 通過create temporary table建立的臨時表,這種臨時表稱為外部臨時表。這種臨時表只對當前使用者可見,當前會話結束的時候,該臨時表會自動關閉。這種臨時表的命名與非臨時表可以同名。內部臨時表會被mysql自動建立並用來儲存某些操作的中間結果,通過ex...

mysql查詢條件 Mysql查詢條件的使用

mysql查詢條件的使用 方法 解釋 gt 大於 gte 大於等於 lt 小於 lte 小於等於 例如 article article.objects.filter id gt 5 startswith 以指定某個字串開始,大小寫敏感 istartswith 以指定某個字串開始,大小寫不敏感 end...

mysql條件查詢

語法 select 查詢列表 from 表名where 篩選條件 分類 一.按條件表示式篩選 條件運算子 不等於 二.按邏輯表示式篩選 邏輯運算子 and or not 三.模糊查詢 like between and in is null 四.排序查詢 語法 select 查詢列表 from 表 w...