測了兩個dm8與sqlserver2012查詢速度的比較




例1 :
select count(0) from t_case_bill --103716select b1.id,b1.billmoney,sum(b2.billmoney)
from(
select top 10000 id,billmoney from t_case_bill
)b1 inner join t_case_bill b2 on b2.id<=b1.id
group by b1.id,b1.billmoney
#上面這句在sqlserver裏,執行了1分鐘38秒 10000行
#而在 dm8裏,執行了,7.5秒100行,即如果10000行 都顯示應該是要 12.5分鐘


例2:

select top 1 id,billmoney,(select sum(billmoney) from t_case_bill b1 where b1.id<=b2.id )
from t_case_bill b2

#上面這句 在sqlserver裏,是秒出的,因爲只有一行

#而在dm8裏,執行了幾十分鐘(我測的約45分鐘), 估計是 id這個聚集索引沒起作用  (所以,它推薦使用 例1的寫法,但寫法複雜度有增加,個人建議dm優化)

 

 




 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章