溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java的DQL查詢語句介紹

發(fā)布時間:2020-06-09 17:39:56 來源:億速云 閱讀:258 作者:元一 欄目:編程語言

Java

Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實現(xiàn)了面向?qū)ο罄碚?,允許程序員以優(yōu)雅的思維方式進行復(fù)雜的編程。

Java具有簡單性、面向?qū)ο蟆⒎植际?、健壯性、安全性、平臺獨立與可移植性、多線程、動態(tài)性等特點。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。

DQL查詢語句

DQL查詢語句只是一種顯示數(shù)據(jù)的方式,因此不會對數(shù)據(jù)庫中的數(shù)據(jù)進行修改。簡單來講,DQL查詢語句有以下四種查詢方法,分別是排序查詢、聚合函數(shù)、分組查詢和分頁查詢。


java的DQL查詢語句介紹


  1. 排序查詢
  

(1)語法:order by 子句
  

order by 排序字段1 排序方式1 , 排序字段2 排序方式2...
  

(2)排序方式:
  

ASC:升序,默認的。
  

DESC:降序。
  

注意:如果有多個排序條件,則當前邊的條件值一樣時,才會判斷第二條件。
  

2、 聚合函數(shù):將一列數(shù)據(jù)作為一個整體,進行縱向的計算。
  

(1)count:計算個數(shù)。一般選擇非空的列:主鍵;count(*)。
  

(2)max:計算最大值
  

(3)min:計算最小值
  

(4)sum:計算和
  

(5)avg:計算平均值
  

注意:聚合函數(shù)的計算,排除null值。
  

解決方案:選擇不包含非空的列進行計算;IFNULL函數(shù)。
  

3、分組查詢:
  

(1)語法:group by 分組字段;
  

(2)注意:分組之后查詢的字段:分組字段、聚合函數(shù)。
  

(3)where 和 having 的區(qū)別?
  

where 在分組之前進行限定,如果不滿足條件,則不參與分組。having在分組之后進行限定,如果不滿足結(jié)果,則不會被查詢出來;where 后不可以跟聚合函數(shù),having可以進行聚合函數(shù)的判斷。
  

-- 按照性別分組。分別查詢男、女同學(xué)的平均分
  

SELECT sex , AVG(math) FROM student GROUP BY sex;
  

-- 按照性別分組。分別查詢男、女同學(xué)的平均分,人數(shù)
  

SELECT sex , AVG(math),COUNT(id) FROM student GROUP BY sex;
 

-- 按照性別分組。分別查詢男、女同學(xué)的平均分,人數(shù) 要求:分數(shù)低于70分的人,不參與分組
  

SELECT sex , AVG(math),COUNT(id) FROM student WHERE math > 70 GROUP BY sex;
  

-- 按照性別分組。分別查詢男、女同學(xué)的平均分,人數(shù) 要求:分數(shù)低于70分的人,不參與分組,分組之后。人數(shù)要大于2個人
  

SELECT sex , AVG(math),COUNT(id) FROM student WHERE math > 70 GROUP BY sex HAVING COUNT(id) > 2;
  

SELECT sex , AVG(math),COUNT(id) 人數(shù) FROM student WHERE math > 70 GROUP BY sex HAVING 人數(shù) > 2;

 

4、分頁查詢

 

(1)語法:limit 開始的索引,每頁查詢的條數(shù);
  

(2)公式:開始的索引 = (當前的頁碼 - 1) * 每頁顯示的條數(shù)
  

-- 每頁顯示3條記錄
  

SELECT * FROM student LIMIT 0,3; -- 第1頁
  

SELECT * FROM student LIMIT 3,3; -- 第2頁
  

SELECT * FROM student LIMIT 6,3; -- 第3頁
  

(3)limit 是一個MySQL"方言"

 


向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI