4 MySQL資料庫 簡單查詢

2021-10-03 18:24:25 字數 3872 閱讀 4653

1.簡單查詢

1.1查詢單個字段

語法:select 查詢列表 from 表名;

#例子:查詢單個欄位-查詢員工姓名

select ename from emp;

1.2查詢多個字段
#例子:查詢多個欄位-查詢員工姓名和工資

select ename,sal from emp;

1.3查詢所有字段
select

*from emp;

1.4查詢字段重新命名-查詢員工姓名以中文顯示字段
#(1)使用as欄位

select ename as

'姓名'

from emp;

#(2)使用空格

select ename '姓名'

from emp;

1.5查詢不重複的記錄-查詢員工涉及到的部門編號有哪些?
select

distinct depno from employees;

2.條件查詢

運算子說明=等於

<>或!=

不等於between … and ….

兩個值之間,等同於 >= and <=

is null

為null(is not null 不為空)

and並且

or或者

in包含,相當於多個or(not in不在這個範圍中)

notnot可以取非,主要用在is 或in中

like

like稱為模糊查詢,支援%或下劃線匹配%匹配任意個字元下劃線,乙個下劃線只匹配乙個字元

least

當有兩個或多個引數時,返回最小值

greatest

當有兩個或多個引數時,返回最大值

regexp

正規表示式匹配

2.1查詢工資等於5000的員工姓名

select ename from emp where sal =

5000

;

2.2查詢薪水不等於5000的員工
select ename,sal from emp where sal <>

5000

;select ename,sal from emp where sal !=

5000

;

2.3查詢薪水為1600到3000的員工
#between … and …

select empno, ename, sal from emp where sal between

1600

and3000

;#>=和<=

select empno, ename, sal from emp where sal >=

1600

and sal <=

3000

;

2.4查詢哪些人津貼為null
select ename,sal,comm from emp where comm is

null

;

2.5查詢哪些人津貼不為null
select ename,sal,comm from emp where comm is

notnull

;

2.6查詢哪些人沒有津貼
select ename,sal,comm from emp where comm is

null

or comm =

0;

2.7查詢工作崗位為manager ,薪水大於2500的員工
select

*from emp where job=

'manager'

and sal >

2500

;

2.8查詢出job為manager 或者 job為salesman的員工
#or操作符

select

*from emp where job=

'manager'

or job=

'salesman'

;#in操作符

select

*from emp where job in

('manager'

,'salesman'

);

2.9查詢出薪水包含1600和薪水包含3000的員工
select

*from emp where sal in

(1600

,3000

);

2.10查詢出薪水不包含1600和薪水不包含3000的員工
#<>、and操作符

select

*from emp where sal <>

1600

and sal <>

3000

;#not、or操作符

select

*from emp where

not(sal =

1600

or sal =

3000);

#not、in操作符

select

*from emp where sal notin(

1600

,3000

);

2.11查詢出津貼不為null的所有員工
select

*from emp where comm is

notnull

;

2.12條件查詢-like
#查詢姓名以m開頭所有的員工

select ename from emp where ename like

'm%'

;#查詢姓名以n結尾的所有員工

select ename from emp where ename like

'%m'

;#查詢姓名中包含o的所有員工

select ename from emp where ename like

'%o%'

;#查詢姓名中第二個字元為a的所有員工

select ename from emp where ename like

'_a%'

3.排序

3.1單一字段排序

#按照薪水從小到大排序

select

*from emp order

by sal;

#取得工作崗位為manager的員工,按照薪水由小到大排序

select

*from emp where job=

'manager'

order

by sal;

3.2手動指定排序順序
#手動指定按照薪水由小到大排序

select

*from emp order

by sal asc

;#手動指定按照薪水由大到小排序

select

*from emp order

by sal desc

;

3.3多個字段排序
#按照工作崗位和薪水倒序

select

*from emp order

by job desc

, sal desc

;

3.4按別名排序
#查詢每個員工一年的薪水,並顯示欄位名字為nianxin,按nianxin降序排序

select ename,sal,sal*

12 nianxin from emp order

by nainxin desc

;

4 Mysql資料庫 表的操作命令

聯絡之前請先登入資料庫 mysql u使用者名稱 p使用者密碼 登入 show tables 表的檢視 create table 語句用於建立資料庫中的表。表由行和列組成,每個表都必須有個表名。create table table name column name1 data type size c...

4 MySQL 申明變數給查詢資料編號

摘自 1 mysql中變數不用事前申明,在用的時候直接用 變數名 使用就可以了。mysql定義使用者變數的方式 第一種用法 set num 1 或set num 1 這裡要使用變數來儲存資料,直接使用 num變數 第二種用法 select num 1 或 select num 欄位名 from 表名...

資料庫(4)查詢

基本語法 select from 表名 消除重複行 select distinct from table 使用where子句對錶中的資料篩選,結果為true的行會出現在結果集中 select from 表名 where 條件 比較運算子 等於 大於 大於等於 小於 小於等於 不等於 或 查詢編號大於...