欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL語句性能優(yōu)化(續(xù))

 更新時間:2016年03月21日 16:39:06   作者:王朋波  
這篇文章主要介紹了SQL語句性能優(yōu)化(續(xù)),設計到性能優(yōu)化相關知識,本文介紹的非常詳細,具有參考借鑒價值,感興趣的朋友一起學習吧

上篇介紹了一下自己在項目中遇到的一種使用sql語句的優(yōu)化方式(性能優(yōu)化——SQL語句),但是說的不夠完整。在對比的過程中,沒有將max函數考慮在內,經人提醒之后趕緊做了一個測試,測試過程中又學到了不少的東西。

上次用的是select count(*) 和select * 的執(zhí)行效率問題,因為我的需求是獲取數據的一個總數來自動給出新的id,然后網友給出可以使用max的方式給出新id。其實這也是一種不錯的思路(當時我們也用過該函數,只不過因為系統(tǒng)數據本身問題,不適合用該函數),然后我就對max函數的性能做了一下測試。

第一次測試:

Declare @dddd Datetime Set @dddd=GETDATE()
select MAX(num) from T_BasicInformation
select [花費時間]=DATEDIFF(ms,@dddd,GetDate())

測試結果:

通過對比發(fā)現,使用該方法的執(zhí)行效率貌似不如select count(*) 的效率高(當時測得的時間為3ms),那么事實真的是這樣嗎?后來查了一些資料,發(fā)現其實max的效率相對來說會更高,那么為什么我們的測試結果會是這樣的呢?咱們接著進行測試

第二次測試:

①語句一

Declare @ddd Datetime Set @ddd=GETDATE()
select MAX(id) from t_SellLogDetail
select [花費時間]=DATEDIFF(ms,@ddd,GetDate())

測試結果:

②語句二

Declare @dddd Datetime Set @dddd=GETDATE()
select MAX(foodId) from t_SellLogDetail
select [花費時間]=DATEDIFF(ms,@dddd,GetDate())

測試結果:

③語句三

Declare @ddddd Datetime Set @ddddd=GETDATE()
select MAX(orderId) from t_SellLogDetail
select [花費時間]=DATEDIFF(ms,@ddddd,GetDate())

測試結果:


做完第二次測試會發(fā)現,同樣的表,不同的字段,其max函數執(zhí)行效果就不一樣。然后就從數據類型出發(fā)了,數據類型如下:

這樣的話,我們的測試結果不同問題就迎刃而解了,在max函數的執(zhí)行過程中,會根據數據類型的不同而有不同的執(zhí)行效率。如果是主鍵且為整型,其效率是最高的;而非主鍵時,int的效率又會高于字符類型。其實這些都很容易理解,各有各的使用方式。

小結:

第一次測試完之后就沒有考慮其他的東西,后來又發(fā)現在max中還有一些需要注意的地方。所以,在我們平常的學習中,一定要學會拓展學習,不要僅僅限于自己想要的結果。得到結果固然是系統(tǒng)需要的,但是對于處于學習期的我們,這遠遠不夠,我們要不斷的探索,才能贏得更大的進步。

關于SQL語句性能優(yōu)化,小編就給大家介紹到這里,希望對大家有所幫助!

相關文章

  • SQL中創(chuàng)建存儲過程

    SQL中創(chuàng)建存儲過程

    這篇文章主要介紹了SQL中創(chuàng)建存儲過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • sql server查詢語句阻塞優(yōu)化性能

    sql server查詢語句阻塞優(yōu)化性能

    這篇文章介紹了sql server查詢語句阻塞優(yōu)化性能的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • IP連接SQL SERVER失敗(配置為字符串失敗)圖文解決方法

    IP連接SQL SERVER失敗(配置為字符串失敗)圖文解決方法

    這篇文章主要介紹了使用IP連接SQL SERVER失敗和配置為連接字符串連接失敗的解決方法,大家參考使用
    2013-11-11
  • 如何統(tǒng)計全天各個時間段產品銷量情況(sqlserver)

    如何統(tǒng)計全天各個時間段產品銷量情況(sqlserver)

    對一個賣場來說,肯定有負責人每天定時去統(tǒng)計每天各個時間段產品銷量情況,以此保證賣場長期可持續(xù)發(fā)展,有的用excel表統(tǒng)計,但是用起來很不方便,下面給大家介紹sqlserver版如何統(tǒng)計全天各個時間段產品銷量情況
    2015-08-08
  • 清除SQL?Server數據庫日志(ldf文件)的方法匯總

    清除SQL?Server數據庫日志(ldf文件)的方法匯總

    隨著系統(tǒng)運行時間的推移,數據庫日志文件會變得越來越大,這時我們需要對日志文件進行備份或清理,這篇文章主要介紹了清除SQL?Server數據庫日志(ldf文件)的幾種方法,需要的朋友可以參考下
    2022-10-10
  • 數據庫 關鍵字一覽表

    數據庫 關鍵字一覽表

    這篇文章主要介紹了數據庫 關鍵字一覽表的相關資料,需要的朋友可以參考下
    2016-10-10
  • 數據庫初始化及數據庫服務端操作詳解

    數據庫初始化及數據庫服務端操作詳解

    這篇文章主要為大家介紹了數據庫初始化及數據庫服務端操作的過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2021-11-11
  • sql server排查死鎖優(yōu)化性能

    sql server排查死鎖優(yōu)化性能

    這篇文章介紹了sql server排查死鎖優(yōu)化性能的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • SQL貨幣數字轉英文字符語句

    SQL貨幣數字轉英文字符語句

    SQL貨幣數字轉英文字符,需要的朋友可以參考下。
    2009-11-11
  • Cont()與Where().Count()有時性能差別如此之大!

    Cont()與Where().Count()有時性能差別如此之大!

    今天在修改后臺用戶公司管理列表時,發(fā)現列表加載超慢的bug!好幾十秒??!數據是相對其他的列表是稍微多點,不過也就4000多條,之前是好的,為啥這么慢呢?
    2010-03-03

最新評論