免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
【JavaWeb】62:單表查詢,以及數(shù)據庫總結

今天是劉小愛自學Java的第62天。

感謝你的觀看,謝謝你。

話不多說,繼續(xù)數(shù)據庫的學習:

使用了數(shù)據庫可視化工具Navicat,感覺真香。

比在DOS窗口中操作方便多了,那個黑乎乎的窗口真心不習慣,并且也沒有提示。

今天詳細地學習下數(shù)據記錄的查詢,同時最后對這幾天的知識點做一個總結。

一、基本查詢

select,選擇選取的意思,在數(shù)據庫之中可以理解成查詢。

①查詢所有數(shù)據

select  * from student;

*即代表了所有數(shù)據的意思,格式為:

select * from+表名

②查詢指定列的信息

select name,gender from student;

查詢表中name,gender這兩列的所有數(shù)據,格式為:select+列名,列名,列名+from+表名

列名之間用逗號隔開。

③條件查詢

select * from student where name="比企谷八幡";

查詢表中name為“比企谷八幡”的所有數(shù)據,其中也可以選擇部分列的數(shù)據,格式不再贅述。

總之where后面填寫判斷條件。

其中還有運算符相關的查詢操作:

①查詢成績不及格的同學

select * from student where score<60;

即score<60的所有數(shù)據。

②查詢成績不等于90的同學

不等于在SQL中有三種表示方式:

  • not score=90;

  • score!=90;

  • score<>90;

③查詢成績在80和90之間的數(shù)據

也就是80<=score<=90,在SQL中有兩種方式:

  • between 80 and 90;

  • score>=80 and score<=90;

and,即并且的意思。

④查詢成績?yōu)?8,95,100的同學

在SQL中有兩種方式:

  • score in(88,95,100);

  • score=88 or score=95 or score=100;

or,即或者的意思。上述均為條件查詢,也就是用where來說明判斷條件,只不過條件中設計到了運算。

二、模糊查詢、濾重和別名

除了上述的基本查詢之外,還有模糊查詢:

①模糊查詢

like,像的意思,可以用來模糊查詢:

  • name like ‘劉%’;其中%表示1個或多個;

  • name like '劉_';其中_表示1個。

其中第一個只要以劉開頭即可以,第二個以劉開頭的兩個字。

②查詢成績不為null的學生

score is not null;

這很好理解,從字面意思就能看出來。

③查詢成績?yōu)閚ull的學生

score is null;

①過濾掉重復的數(shù)據

distinct,清楚的、不同的意思,在這里可以理解成過濾,格式如下:

select distinct+列名+from+表名

其中列名可以有多個。

②給列名起別名

可以給列名起一個別名,格式如下:

select 列名 as 別名+from+表名

就算取別名了,數(shù)據庫里的列名是沒有改變的。

它就是一個渲染效果,所以as后面接什么都可以,字符串也不用加引號。

其中as也可以省略,但最好不省略。

③列運算

這個也好理解,直接在查詢列名上+10即可。

其中有一行數(shù)據score=null,在SQL中:null與任何數(shù)相加都為null。(有點類似于Java中的字符串)

④關于null的處理

ifnull(列名,默認值) ,如果列名為空,給它一個默認值,圖中默認值為0,這樣就能參與運算了。

三、排序查詢及聚合函數(shù)

1排序查詢

order,訂單、排序的意思,在數(shù)據庫中order就是排序的意思,和前面我們學的sort是一樣的。

①根據score排序查詢

select * from+表名+order by+列名+desc

  • desc,在這里是降序的意思。

  • asc,即為升序。

②根據指定條件排序

現(xiàn)在只對男生排序,故加一個where條件判斷。

注意:where是緊接著from+表名后面的。

其中排序默認是升序,所以可以省略不寫。

②根據年齡、分數(shù)組合排序

多重排序,先根據前面的條件排序,再根據后面的條件排序。

2聚合函數(shù)

SQL語言中定義了部分的函數(shù),可以對查詢結果進行操作,也就是聚合函數(shù)。

①統(tǒng)計數(shù)量

count,數(shù)數(shù)的意思,即統(tǒng)計表示數(shù)據數(shù)量。

  • count(*):*代表所有,即查詢所有數(shù)據,結果為5。

  • count(score):score這一列因為有一行數(shù)據為null,所以不計算在內,

②統(tǒng)計班上的總分

sum,求和的意思。

  • sum(score):分數(shù)這一列所有的數(shù)據求和。

  • sum(score+age):(分數(shù)+年齡這兩列)所有的數(shù)據求和。

③統(tǒng)計班上的平均分

avg,求平均數(shù)的意思,很好理解。

  • avg(score):分數(shù)這一列求平均值。

  • avg(score+age):分數(shù)+年齡這兩列求平均值。

  • sum(score)/count(*):總分除以總人數(shù)求平均值。

這兩種的區(qū)別在于第一種如果數(shù)據為null,不加入運算,第二種將nul的數(shù)據也加入運算了。

④保留小數(shù)點數(shù)

round(avg(score),2);2,即表示保留小數(shù)點數(shù)為2位,可自行設點想要保留的小數(shù)點數(shù)。

此外,還有兩個聚合函數(shù):

  • max(score):求分數(shù)這列的最大值。

  • min(score):求分數(shù)這列的最小值。

用法和上述一樣,就不再贅述了。

再次強調

  • null是不參與運算的。

  • 可以使用ifnull(列名,默認值)給null設定一個默認值。

四、分組查詢及查詢語句執(zhí)行順序

1分組查詢

group,分組的意思,關鍵單詞為group by。

①分男女組查詢平均分

根據性別gender分組查詢。

格式為:select+列名+from+表名+group by+列名

②根據特定條件分組查詢平均分

前面的學習也知道了,where后面專門是接查詢條件的,但是在分組查詢中一般用having代替,其放在group by后面。

2查詢語句執(zhí)行順序

用一個例子來說明執(zhí)行順序,如下圖:


①from+表名

這是第1步,表中的所有數(shù)據。

②where+指定條件

這是第2步,查詢出指定條件的數(shù)據。

其中起別名:as+別名

這是第2.5步,介于第1步和第2步之間。

所以where后不能接別名,因為別名都沒執(zhí)行。

③group by+列名

這是第3步,按照指定列名分組。

其中聚合函數(shù):avg(列名)

這是第3.5步,介于第3步和第4步之間。

所以分組不能接聚合函數(shù)。

④having+條件

這是第4步,所以having后的查詢條件,既可以有別名,也可以有聚合函數(shù)。

而where就不行,因為where執(zhí)行的太早了。

⑤select+查詢語句

這是第5步,查詢出對應的數(shù)據,也就是結果集。

⑥order by+列名+desc|asc

查詢語句是最后執(zhí)行的,所以也可以接別名。

面試題:where 和 having 的區(qū)別

  • having通常與group by結合使用。

  • where是在分組之前進行過濾的,having 是在分組之后進行過濾的。

  • having可以接聚合函數(shù)和別名,where都不可以,也就是說having查詢條件比where廣。

查詢時,如非必要,用where的效率更高。

為什么?

where先執(zhí)行,先將數(shù)據篩選之后會減少計算量。

后續(xù)再進行其他條件判斷,可以提高查詢效率。

最后

對這幾天知識點做一個總結:

數(shù)據庫合集 【JavaWeb】61:數(shù)據記錄基本操作 【JavaWeb】60:數(shù)據表基本操作 【Javaweb】59:數(shù)據庫基本操作

謝謝你的觀看。

如果可以的話,麻煩幫忙點個贊,謝謝你。

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
《MySQL 8.0數(shù)據庫管理與應用》第3章 數(shù)據查詢
MySql 篩選條件、聚合分組、連接查詢
Oracle學習筆記系列(三)之SQL條件查詢
SQL用了兩年多,我最常用的2個小技巧
MySQL SELECT查詢
第三天
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服