pivot 用order by 语句排序时,老是超时的解决办法,超Easy
pivot是用來把某列字段轉成行字段,可能我描述不太清楚,這個用過的都知道的啦,所以我也不費口水了,切入正題。
?
我之前用pivot建了個視圖View1,然后我有一個sql語句,如下(一直都運行得好好的):
Select * From [View1] Order By CreateDate Desc
?
突然間,這玩意不知道抽什么風,一執行就超時,半個小時都無響應,而實際上的數據(Select * From [View1])只有400來條~~,真火大。
?
后來想想,之前一直好好的,會不會是因為新入了一筆帶有特殊符號的記錄原緣故呢?于是我就開始這樣子搞了,假設這個[View1]有400條記錄吧,
那我就執行 Select Top 399?* From [View1] Order By CreateDate Desc看看,F5...正常...
好了,再執行??Select Top?400?* From [View1] Order By CreateDate Desc 一看,我了個去,還是正常...
于是狠下心來 Select Top?10000?* From [View1] Order By CreateDate Desc 還是正常,哦,HOHO,那就行了~
?
呵呵,沒錯,就這么簡單,加個Top 10000就行了,反正這個數據一般不會太多的,有個1000用戶都看不完啦,對吧?更何況我10000,所以,這樣子就好了。
?
?
?
注:
1、我搞不懂為什么去掉Order By 為什么就可以執行了,刷的一聲就出來了,有知道奸情的同學可以告訴我一下么~
2、我更不知道為什么加個Top 上去,Order By就又正常了~
轉載于:https://www.cnblogs.com/seasons1987/archive/2013/03/08/2949996.html
總結
以上是生活随笔為你收集整理的pivot 用order by 语句排序时,老是超时的解决办法,超Easy的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MvvmLight:Command
- 下一篇: mysql的慢查询日志