2013-10-24 74 views
-4

我想寫一個Hibenate請求,我的SQL請求是這樣的:寫作休眠請求

選擇城市,從城市的用戶羣COUNT(*);

謝謝!

+5

可以實現SO不是代碼生成器。告訴我們你有什麼嘗試。順便說一句,你有很多例子如何在Hibernate中執行這樣的查詢。 –

+0

你也可以通過hibernate請求它also.search'sql with hibernate' –

回答

2

使用代碼片斷

session.createSQLQuery("Select city , count(*) from user group by city"); 

Hibernate的可以用來查詢寫原始SQL代碼。

編輯:

至於建議Hibernate也有它自己的查詢語言HQL,它允許創建Query。它使用更多用戶友好的界面來查詢對象而不是表格。在你的情況下,查詢將重寫爲

session.createQuery("Select user.city, count(*) from User as user group by user.city"); 

不是一個很大的區別,但對象用戶代替表和它的屬性。

隨着標準API相同的可利用突起在

session.createCriteria(User.class) 
    .setProjection(Projections.projectionList() 
    .add(Projections.rowCount()) 
    .add(Projections.groupProperty("city")) 
); 
+1

+1最好還是建議標準和hql的可能性。 –