MySQL 基礎查詢高階02

2021-09-13 01:30:02 字數 3710 閱讀 4901

#高階

二、條件查詢

/*語法:

select

查詢列表

from

表名字where

賽選條件;

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

條件運算子: > < = <>

二、按邏輯表示式查詢

主要作用就是連線條件表示式

邏輯運算子: && || !

and or not

and &&:如果兩個條件都為真才為真

or ||:只要有乙個條件為真九為真

not !:如果連線的條件本身為假 對結果去反 真

三、模糊查詢

like

between and

inis null

#一、按條件表示式篩選

#案例一、查詢工資》12000的員工資訊

select

*from

employees

where salary > 12000 ;

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

use myemployees;

select

last_name,

department_id

from

employees

where

department_id <> 90;

二、按邏輯表示式賽選

#案例一、查詢工資在10000到20000之間的員工名、工資

use myemployees;

select

last_name,

salary,

commission_pct

from

employees

where

salary=>10000 and salary<=20000;

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

select

*from

employees

where

department_id<90 or department_id>110 or salary > 15000;

/#三、模糊查詢

/like

特點:一般和萬用字元搭配使用

萬用字元:%: 任意多個字元包括零個字元

*:_: 任意單個字元

如果查詢條件包含下劃線 那麼就通過轉義字元 /

或則自定義轉譯字元 escape 『$』 指定轉譯字元

between and

inis null | is not null

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

select

*from

employees

where

last_name like '%a% ';

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

select

last_name,

salary

from

employees

where

last_name like 『__n_l%』;

#案例三、查詢員工名中第二個字元為下劃線的員工名

select

last_name

from

employees

where

last_name like 『_katex parse error: expected group after '_' at position 1: _̲%' escape '』;

#2.between and

注意事項:使用between and可以提高語句的簡潔度

包含零接值

#案例一、查詢員工編號在100帶129之間的所有的員工資訊

select

*from

employees

where

employee_id between 100 and 120;

#3.in

#含義:用於去判斷某欄位是否屬於in列表中的某一項

#使用in提高語句的簡潔度

#in列表的值得例行必須一致或相容

#案例:查詢員工的工種編號是 it-prog、ad_vp、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;

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

select

last_name,

commission_pct

from

employees

where

commission_pct is not null;

#安全等於 <=> 但是可讀性比較差

select

last_name,

commission_pct

from

employees

where

commission_pct <=> null;

#案例二、工資為12000的員工資訊

select

last_name,

salary,

commission_pct

from

employees

where

salary <=> 12000;

#is null pk <==>

is null:僅僅可以判斷null 建議使用

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

題目一、查詢沒有獎金且工資小於18000的salary,last_name

select

salary,

last_name

from

employees

where commission_pct is null

and salary < 18000 ;

題目二、查詢employees表中,job_id不為』it』或者工資為12000的員工資訊

select

*from

employees

where job_id <> 『it』 or salary = 12000 ;

題目三、檢視部門departments表的結構

desc departments;

題目四、查詢部門departments表中設計到了那些位置編號

select distinct location_id

from departments;

題目五、經典面試題目

試問: select * from employees 和

select * from employees where commission_pct like 『%%』 and last_name like 『%%』

*/

MYSQL基礎02 查詢

查詢是很大的一塊,所以這裡我只會寫mysql的特點,就我目前使用的情況,mysql對標準sql是比較支援,如果是新手的話,建議去w3school 學習標準sql.1.dual dual是乙個虛擬表,即該表是不存在的,用於直接select 標量時,使語句看起來符合sql規範 mssql select ...

MySQL筆記 02 基礎查詢

select 查詢列表 from 表名 類似於 system.out.println 列印內容 select last name from employees select last name,salary,email from employees 方式一 select employee id fi...

高階一 Mysql基礎查詢

基礎查詢示例 總結select 查詢列表 from 表名 1.查詢的結果集 是乙個虛擬表 2.select 查詢列表 類似於 system.out.println 列印內容 select 後面跟的查詢列表,可以有多個部分組成,中間用逗號隔開 例如 select 欄位1,欄位2,表示式 from 表名...