hql查詢
1 hql:hibernate query language,hibernate提供一種查詢語言,hql語言和普通sql很相似,區別:普通sql操作數據庫表和字段,hql操作實體類和屬性
2 常用的hql語句
(1)查詢所有: from 實體類名稱
(2)條件查詢: from 實體類名稱 where 屬性名稱=?
(3)排序查詢: from 實體類名稱 order by 實體類屬性名稱 asc/desc
3 使用hql查詢操作時候,使用Query對象
(1)創建Query對象,寫hql語句
(2)調用query對象裏面的方法得到結果
查詢所有
1 查詢所有客戶記錄
(1)創建Query對象,寫hql語句
(2)調用query對象裏面的方法得到結果
2 查詢所有: from 實體類名稱
條件查詢
1 hql條件查詢語句寫法:
(1)
from 實體類名稱 where 實體類屬性名稱=? and實體類屬性名稱=?
from 實體類名稱 where 實體類屬性名稱 like ?
模糊查詢
排序查詢
1 hql排序語句寫法
(1)from 實體類名稱 order by 實體類屬性名稱 asc/desc
分頁查詢
1 MySQL實現分頁
(1)使用關鍵字 limit實現
2 在hql中實現分頁
(1)在hql操作中,在語句裏面不能寫limit,hibernate的Query對象封裝兩個方法實現分頁操作
投影查詢
1 投影查詢:查詢不是所有字段值,而是部分字段的值
2 投影查詢hql語句寫法:
(1)select 實體類屬性名稱1, 實體類屬性名稱2 from 實體類名稱
(2)select 後面不能寫 * ,不支持的
3 具體實現
聚集函數使用
1 常用的聚集函數
(1)count、sum、avg、max、min
2 hql聚集函數語句寫法
(1)查詢表記錄數
- select count(*) from 實體類名稱
直接把object類型轉int類型是會報錯的,所以必須得如上代碼那樣先轉爲Long,再轉爲int類型。