開發環境:
jsf + hibernate + mysql
問題發現:
先來看看sql語句:
select biomarker_type,count(geneid) from biomarkers group by biomarker_type;
由於工程使用的是hibernate,一般有關資料的crud都是通過hql執行的,即hql操作的是個實體物件(bean),該物件對映到資料中的一張表中,而上面的查詢涉及到sql的聚集函式,查詢出來的資料關聯不了已經存在的實體物件屬性中,自然在渲染到頁面的時候也是顯得力不從心。。。
解決想法:
把查詢結果儲存在乙個臨時的bean物件中。。。
具體實現:
1、新建乙個bean物件statisticsquery,定義兩個屬性param1,param2,要有其對應的訪問器。
2、將查詢結果儲存到物件statisticsquery中:
public listquerystatistics()
} catch (exception e) finally catch (sqlexception e)
} return sqlist;
}
此處使用的是jdbc連線的資料庫,不過這麼做還得去讀取jdbc配置檔案。若用hibernate連線資料庫,執行操作的**如下:
public listquerystatistics()
return sqlist;
}
3、渲染到
頁面,如下:
多表查詢 多表查詢 多表查詢
查詢語法 select 列表名稱 from 表明列表 where 笛卡爾積 有兩個集合a,b,取這兩個集合的所有組成情況 要完成多表查詢,需要消除無用的資料 多表查詢分類 1 內連線查詢 1 隱式內連線 使用where消除無用的資料 例子 select t1.name,t1.gender,t2.na...
SQL 多表連線統計查詢
select y ygzltbl.fz,y ygzltbl.gh,y ygzltbl.xm,y ygzltbl.ye,sum y sktbl.kkje sum y cztbl.je from y ygzltbl left join y sktbl on y ygzltbl.gh y sktbl.gh...
查詢 多表查詢。。。
此時你得使用鏈結條件。通過存在於相對應列中的公共值,乙個表中的資料可以被另乙個表的資料鏈結,通常都是主鍵和外來鍵進行鏈結。一般鏈結條件寫在where子句裡。select empno,emp.deptno,loc from emp,dept where emp.deptno dept.deptno 對...