MySQL DQL語(yǔ)句的具體使用
DQL
DQL英文全稱(chēng)是Data Query Language(數(shù)據(jù)查詢語(yǔ)言),數(shù)據(jù)查詢語(yǔ)言,用來(lái)查詢數(shù)據(jù)庫(kù)中表的記錄。
基本語(yǔ)法
DQL 查詢語(yǔ)句,語(yǔ)法結(jié)構(gòu)如下:
SELECT
字段列表
FROM
表名列表
WHERE
條件列表
GROUP BY
分組字段列表
HAVING
分組后條件列表
ORDER BY
排序字段列表
LIMIT
分頁(yè)參數(shù)
基礎(chǔ)查詢
1、查詢多個(gè)字段
SELECT 字段1, 字段2, 字段3 ... FROM 表名 ; SELECT * FROM 表名 ;
注意 : * 號(hào)代表查詢所有字段,在實(shí)際開(kāi)發(fā)中盡量少用(不直觀、影響效率)。
2、字段設(shè)置別名
SELECT 字段1 [ AS 別名1 ] , 字段2 [ AS 別名2 ] ... FROM 表名; SELECT 字段1 [ 別名1 ] , 字段2 [ 別名2 ] ... FROM 表名;
3、去除重復(fù)記錄
SELECT DISTINCT 字段列表 FROM 表名;
案例
A. 查詢指定字段 name, workno, age并返回
select name,workno,age from emp;
B. 查詢返回所有字段
select id ,workno,name,gender,age,idcard,workaddress,entrydate from emp;
C. 查詢所有員工的工作地址,起別名
select workaddress as '工作地址' from emp; -- as可以省略 select workaddress '工作地址' from emp;
D. 查詢公司員工的上班地址有哪些(不要重復(fù))
select distinct workaddress '工作地址' from emp;
條件查詢
語(yǔ)法
SELECT 字段列表 FROM 表名 WHERE 條件列表 ;
條件
常用的比較運(yùn)算符如下:
比較運(yùn)算符 | 功能 |
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
= | 等于 |
<> 或 != | 不等于 |
BETWEEN ... AND ... | 在某個(gè)范圍之內(nèi)(含最小、最大值) |
IN(...) | 在in之后的列表中的值,多選一 |
LIKE 占位符 | 模糊匹配(_匹配單個(gè)字符, %匹配任意個(gè)字符) |
IS NULL | 是NULL |
常用的邏輯運(yùn)算符如下:
邏輯運(yùn)算符 | 功能 |
AND 或 && | 并且 (多個(gè)條件同時(shí)成立) |
OR 或 || | 或者 (多個(gè)條件任意一個(gè)成立) |
NOT 或 ! | 非 , 不是 |
案例
A. 查詢年齡等于 22 的員工
select * from emp where age = 22;
B.查詢沒(méi)有身份證號(hào)的員工信息
select * from emp where idcard is null;
c.查詢年齡在15歲(包含) 到 20歲(包含)之間的員工信息
select * from emp where age >= 15 && age <= 20; select * from emp where age >= 15 and age <= 20; select * from emp where age between 15 and 20;
D.查詢年齡等于18 或 20 或 40 的員工信息
select * from emp where age = 18 or age = 20 or age =40; select * from emp where age in(18,20,40);
E.查詢姓名為兩個(gè)字的員工信息 _ %
select * from emp where name like '__';
F. 查詢身份證號(hào)最后一位是X的員工信息
select * from emp where idcard like '%X'; select * from emp where idcard like '_________________X';
聚合函數(shù)
常見(jiàn)的聚合函數(shù)
函數(shù) | 功能 |
count | 統(tǒng)計(jì)數(shù)量 |
max | 最大值 |
min | 最小值 |
avg | 平均值 |
sum | 求和 |
語(yǔ)法
SELECT 聚合函數(shù)(字段列表) FROM 表名 ;
案例
A. 統(tǒng)計(jì)該企業(yè)員工數(shù)量
select count(*) from emp; -- 統(tǒng)計(jì)的是總記錄數(shù) select count(idcard) from emp; -- 統(tǒng)計(jì)的是idcard字段不為null的記錄數(shù)
B. 統(tǒng)計(jì)該企業(yè)員工的平均年齡
select avg(age) from emp;
C. 統(tǒng)計(jì)該企業(yè)員工的最大年齡
select max(age) from emp;
D. 統(tǒng)計(jì)該企業(yè)員工的最小年齡
select min(age) from emp;
E. 統(tǒng)計(jì)西安地區(qū)員工的年齡之和
select sum(age) from emp where workaddress = '西安';
到此這篇關(guān)于MySQL DQL語(yǔ)句的具體使用的文章就介紹到這了,更多相關(guān)MySQL DQL語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SQL聯(lián)合查詢inner join、outer join和cross join的區(qū)別詳解
今天小編就為大家分享一篇關(guān)于SQL聯(lián)合查詢inner join、outer join和cross join的區(qū)別詳解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03mysql-8.0.35-winx64?zip版安裝教程(附圖文)
許多人在學(xué)習(xí)過(guò)程中經(jīng)常因使用不當(dāng)將MySQL數(shù)據(jù)庫(kù)搞崩潰,這篇文章主要給大家介紹了關(guān)于mysql-8.0.35-winx64?zip版安裝教程的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01Windows下MySQL詳細(xì)安裝過(guò)程及基本使用
本文詳細(xì)講解了Windows下MySQL安裝過(guò)程及基本使用方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2021-12-12Mysql的SELECT語(yǔ)句與顯示表結(jié)構(gòu)詳解
這篇文章主要介紹了Mysql的SELECT語(yǔ)句與顯示表結(jié)構(gòu)詳解的相關(guān)資料,需要的朋友可以參考下2023-01-01MySQL:explain結(jié)果中Extra:Impossible?WHERE?noticed?after?rea
這篇文章主要介紹了MySQL:explain結(jié)果中Extra:Impossible?WHERE?noticed?after?reading?const?tables問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12