SQL數(shù)據(jù)查詢之DQL語言介紹
1.DQL類型的SQL語句基本概述
DQL類型的SQL語言全稱為Data Query Language,中文名稱為數(shù)據(jù)查詢語言,主要是用來查詢數(shù)據(jù)庫中的表的數(shù)據(jù)的,像關(guān)聯(lián)查詢、多表查詢、嵌套查詢都是DQL類型的SQL語言。
DQL數(shù)據(jù)查詢語言用到的SQL指令主要是SELECT,SELECT語法結(jié)構(gòu)如下:
SELECT
字段列表
FROM
表名
WHERE
條件列表
GROUP BY
分組字段列表
HAVING
分組后的條件列表
ORDER BY
排序字段列表
LIMIT
分頁參數(shù)
根據(jù)查詢的需求不同,可以分為以下幾個部分:
- 基本查詢,不帶任何的條件。
- 條件查詢,使用WHERE語句根據(jù)不用的條件進(jìn)行查詢。
- 聚合函數(shù),例如count、max、min、avg、sum,主要和分組查詢配合使用。
- 分組查詢,使用groupby實現(xiàn)分組查詢。
- 排序查詢,使用order by實現(xiàn)排序查詢。
- 分頁查詢,每一頁顯示多少條積木,通過limit實現(xiàn)。
2.準(zhǔn)備一張可以練習(xí)查詢的數(shù)據(jù)表
一張技術(shù)中心的新冠疫苗接種信息表,表結(jié)構(gòu)和數(shù)據(jù)如下,用于我們練習(xí)各種類型的查詢語句。
表結(jié)構(gòu)如下:
drop table if exists jszx_xgymjzxxb; create table jszx_xgymjzxxb ( id int comment '編號', bm varchar(10) comment '部門', name varchar(10) comment '姓名', xb char(1) comment '性別', nl int comment '年齡', szd varchar(50) comment '所在地', zjhm char(18) comment '證件號碼', wd char(1) comment '未打', first_injection char(1) comment '第一針', second_injection char(1) comment '第二針', third_injection char(1) comment '第三針', wjzymjtyy varchar(50) comment '具體原因', zhycjzymdsj date comment '最后一次接種疫苗的時間' ) comment '技術(shù)中心新冠疫苗接種信息表';
數(shù)據(jù)如下:
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('1','運(yùn)維部','江?;?#39;,'男','31','北京','110101199009154512','否','是','是','否','身體原因','2021-07-18');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('2','運(yùn)維部','張希','女','28','北京','230182199412251659','否','是','是','否','身體原因','2021-03-21');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('3','運(yùn)維部','張亞男','男','29','上海','13052819930918721X','否','是','是','否','身體原因','2021-09-05');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('4','測試部','吳昊澤','男','33','上海','110101198909134869','否','是','是','否','身體原因','2021-05-13');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('5','測試部','喬亮','男','32','上海','110101199009154512','否','是','是','否','身體原因','2022-07-16');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('6','測試部','張子云','女','34','上海','371522198803278716','否','是','是','否','身體原因','2021-11-18');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('7','測試部','陳國明','男','33','深圳','371522198902283975','否','是','是','否','身體原因','2022-01-19');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('8','測試部','張茜茜','女','26','深圳','140256199610213942','否','是','是','否','身體原因','2022-03-03');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('9','開發(fā)部','趙曉燕','女','23','北京','140528199909135815','否','是','是','否','身體原因','2021-11-07');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('10','開發(fā)部','王蕊蕊','女','25','北京','110101199712223817','否','是','是','否','身體原因','2021-07-26');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('11','開發(fā)部','牛澤陽','男','42','上海','110111198001031287','否','是','是','否','身體原因','2021-06-07');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('12','開發(fā)部','吳剛','男','30','上海','150221199208157849','否','是','是','否','身體原因','2021-07-29');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('13','開發(fā)部','高宇','男','23','上海','110104199904183824','否','是','是','否','身體原因','2021-09-30');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('14','開發(fā)部','劉洋','女','24','深圳','110105199809274782','否','是','是','否','身體原因','2021-02-18');
insert into jszx_xgymjzxxb (id, bm, name, xb, nl, szd, zjhm, wd, first_injection, second_injection, third_injection, wjzymjtyy, zhycjzymdsj) values ('15','開發(fā)部','王文良','男','30','深圳','110109199206056659','否','是','是','否','身體原因','2022-03-15');
數(shù)據(jù)表準(zhǔn)備完畢。
3.DQL語句之簡單的基礎(chǔ)查詢
3.1.查詢表中指定的多個字段的數(shù)據(jù)
語法格式:SELECT 字段1, 字段2, 字段3 ... FROM 表名 ;
查詢表中name、xb、nl、zjhm、wjzymjtyy字段的數(shù)據(jù)。
select name,xb,nl,zjhm,wjzymjtyy from jszx_xgymjzxxb;
查看查詢的結(jié)果。
3.2.查詢表中所有字段的數(shù)據(jù)
select * from jszx_xgymjzxxb;
查看查詢的結(jié)果,所有字段的數(shù)據(jù)都已經(jīng)列出來了。
3.3.查詢表中數(shù)據(jù)時為字段設(shè)置別名
SELECT指令支持在查詢數(shù)據(jù)時,為表中的字段設(shè)置別名。
命令格式:SELECT 字段1 [ AS 別名1 ] , 字段2 [ AS 別名2 ] ... FROM 表名;
或者:SELECT 字段1 [ 別名1 ] , 字段2 [ 別名2 ] ... FROM 表名;
設(shè)置別名時AS關(guān)鍵字可寫可不寫。
查詢表中name、xb、nl、szd、zjhm等五個字段的數(shù)據(jù),并為每個字段設(shè)置別名。
select name 姓名,xb 性別,nl 年齡,szd 所在地,zjhm 證件號碼 from jszx_xgymjzxxb;
select name as 姓名,xb as 性別,nl 年齡,szd as 所在地,zjhm as 證件號碼 from jszx_xgymjzxxb;
查看查詢的結(jié)果,已經(jīng)為指定的查詢字段設(shè)置了中文別名。
3.4.查詢表中所在地字段的數(shù)據(jù)并且去掉重復(fù)值
去重的命令格式:SELECT DISTINCT 字段列表 FROM 表名;
select distinct szd from jszx_xgymjzxxb;
查看查詢的結(jié)果,自當(dāng)將重復(fù)值進(jìn)行了去重。
到此這篇關(guān)于SQL數(shù)據(jù)查詢之DQL語言介紹的文章就介紹到這了,更多相關(guān)SQL DQL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SQLServer數(shù)據(jù)庫密碼短時間強(qiáng)制過期的解決
本文主要介紹了SQLServer數(shù)據(jù)庫密碼短時間強(qiáng)制過期的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04詳解SQL Server數(shù)據(jù)庫架構(gòu)和對象、定義數(shù)據(jù)完整性
本篇文章詳細(xì)講解了SQL Server的主鍵約束、唯一約束和外鍵約束這一塊。圖文并茂,方便大家理解與學(xué)習(xí)。有興趣的朋友可以看下2016-12-12使用sqlserver存儲過程sp_send_dbmail發(fā)送郵件配置方法(圖文)
這篇文章用圖文的方式介紹了使用sqlserver存儲過程sp_send_dbmail發(fā)送郵件的方法,大家參考使用吧2014-01-01SQLSERVER語句的執(zhí)行時間顯示的統(tǒng)計結(jié)果是什么意思
在SQL語句調(diào)優(yōu)的時候,大部分都會查看語句執(zhí)行時間,究竟SQLSERVER顯示出來的統(tǒng)計結(jié)果是什么意思,接下來為您一一解釋,感興趣的朋友可以了解下2013-01-01由于系統(tǒng)錯誤 126 (SQL Server),指定驅(qū)動程序無法加載
今天下午在給客戶安裝用友T3標(biāo)準(zhǔn)版時碰到一個非常棘手的問題,MSDE2000數(shù)據(jù)庫和用友T3軟件都安裝好了,但是打開系統(tǒng)管理的時候提示:AUTOMATION錯誤,然后將數(shù)據(jù)庫徹底卸載干凈,用友通T3軟件也徹底卸載干凈,重新安裝了一下,仍然是這個情況2021-03-03