如何利用圖表,呈現drill down的多維分析 |
尚未結案
|
goodjimmy
一般會員 ![]() ![]() 發表:20 回覆:26 積分:9 註冊:2004-02-19 發送簡訊給我 |
請問各位高手:
我現在的查詢類別有,性別、科別、醫生等類別,我利用dbchart來查詢資料庫的數值,會呈現出長條圖、圓餅圖等,如果我想用資料倉儲中的多維分析,drill down的功能,我可以利用那些元件,來幫我達成下列的方式查詢呢?
例如:
使用者欲查詢,某科別中的醫生,在醫生中的某性別病患
意謂著 科別--醫生--性別,這樣的向下探鑽
但是,根節點是靈活的,也可以用
醫生--科別--性別
目前我是用treeView的元件,去呈現該類別,但是不能依照上列的查詢方式,去判斷,且數值的回傳sql語法,也有待商確。 耐的住被人磨,則會像鑽石一樣發光
|
hahalin
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
|
sanhang
一般會員 ![]() ![]() 發表:12 回覆:25 積分:17 註冊:2002-08-31 發送簡訊給我 |
引言: 請問各位高手: 我現在的查詢類別有,性別、科別、醫生等類別,我利用dbchart來查詢資料庫的數值,會呈現出長條圖、圓餅圖等,如果我想用資料倉儲中的多維分析,drill down的功能,我可以利用那些元件,來幫我達成下列的方式查詢呢? 例如: 使用者欲查詢,某科別中的醫生,在醫生中的某性別病患 意謂著 科別--醫生--性別,這樣的向下探鑽 但是,根節點是靈活的,也可以用 醫生--科別--性別 目前我是用treeView的元件,去呈現該類別,但是不能依照上列的查詢方式,去判斷,且數值的回傳sql語法,也有待商確。 耐的住被人磨,則會像鑽石一樣發光提供一點意見 樓主所提的好像就是OLAP跟BI的範圍 透過不同的dimension以Drill-down、Drill-through的方式呈現不同的資訊 也可以用PivotTable呈現分析過的資料 想單純用DBChart應該是沒辦法做到 我記得Delphi好像有一組Decision Cude的元件,不過沒用過 如果您主要是公司應用的話,且預算足夠,建議您可以向外買一套好的BI Package 如果預算不夠,但是公司有SQL Server授權的話 可以試試看SQL Server中的Analysis Services Reporting Services (或是未來會boudle的ActiveViews) 會比您自行開發要來的好 |
goodjimmy
一般會員 ![]() ![]() 發表:20 回覆:26 積分:9 註冊:2004-02-19 發送簡訊給我 |
呵!!,我知道sqlserver也有提供元件,只是boss希望我用coding的方式
目前,我是有想到用treeview複選的功能
選擇不同類別,ex:可以選擇,男性,加上某位醫生,加上某科別,加上某病房
以此類推去複選,不過好像有點死,不靈活,呵
dbchart,的確沒有提供多維度的呈現,fxchart才有,只不過因為我的運算過程都設計放於view的設計上,在資料庫已經運算好,將資料回傳而已 我程式的sql是:
select inh_yyymm as day ,inh_sex,inh_docid,inh_setno,inh_broom,inh_ptct,inh_total, inh_psex as value from v_inh where inh_yyymm between 日期提供資料庫的表格,和view的用法 表格欄位 create table INH( INH_SECTNO (科別) VARCHAR2(4)NOT NULL, INH_YYYMM (日期年月) VARCHAR2(5)NOT NULL, INH_DOCID (醫生編號) VARCHAR2(4)NOT NULL, INH_BROOM (病房編號) VARCHAR2(4)NOT NULL, INH_SEX (性別) VARCHAR2(3), INH_PTCT (住院人數) NUMBER(5)NOT NULL, INH_THDCT (超過30天住院人數) NUMBER(6)NOT NULL, INH_SUMDAY (平均住院日) NUMBER(6)NOT NULL); 以下是view的用法利用它來運算公式 create view vw_INH(inh_total,inh_yyymm) as select sum(inh_ptct),inh_yyymm from inh group by inh_yyymm ; commit; create view v_inh(inh_yyymm,inh_sex,inh_docid,inh_sectno,inh_broom,inh_ptct,inh_thday,inh_sumday,inh_total,inh_psex,inh_thdct,inh_avgday) as select a.inh_yyymm,b.inh_sex,b.inh_docid,b.inh_sectno,b.inh_broom,b.inh_ptct,b.inh_thday,b.inh_sumday,a.inh_total,(b.inh_ptct/a.inh_total*100), (b.inh_thday/a.inh_total*100),(b.inh_sumday/a.inh_total) from vw_inh a,inh b where a.inh_yyymm=b.inh_yyymm;耐的住被人磨,則會像鑽石一樣發光 |
hahalin
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |