[問題] SQL 使用stored procedure
請問因為有個web頁面要產生統計的表格,
大概如下:
a b c d ........
A x x1 x2 x3.......
B y y1 y2 y3.....
C z z1 z2 z3 ......
.
.
.
x,x1...y,y1...z,z1都是由A與a,B與b,C與c..等來當做條件count出來的數量
目前是由後端產生sql語法來執行count數量計算,
為了減少查詢資料庫次數,
每一列我都用union all串起來,如下
select count(*) from XXX where A in (select a1 from xxx where a1= a)
union all
select count(*) from XXX where A in (select a1 from xxx where a1= b)
union all
select count(*) from XXX where A in (select a1 from xxx where a1= c)
........................
有多少欄就union幾次(上述sql簡單描述,實際有多子查詢),
結果每次進到這個頁面都要等個9秒以上....效率很差
想說如果改用stored procedure,
直接把計算語法寫在DB中,效率會差很多嗎??
我由後台產生的sql語法傳到DB去執行,難道是語法太長要傳輸時間??
不知各位前輩有無此經驗,或是有更好的辦法??
謝謝您指教.....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.110.213.242
推
12/16 21:23, , 1F
12/16 21:23, 1F
→
12/16 21:24, , 2F
12/16 21:24, 2F
→
12/16 21:24, , 3F
12/16 21:24, 3F
→
12/16 21:43, , 4F
12/16 21:43, 4F
→
12/16 21:43, , 5F
12/16 21:43, 5F
推
12/17 13:14, , 6F
12/17 13:14, 6F
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章