簡體   English   中英

如何提高SQL更新查詢的性能?

[英]how to improve performance of update query in sql?

我想提高此更新查詢的性能,因為執行時間很長:

Qry = "update tab1 set cDate=GetDate() where right('000000000000'+in_num,12)='" 
& InvNo.PadLeft(12, "0") & "' and (Total-Amount)<>Balance and cDate is null"

為什么用以下InvNo用前導0強制填充in_numInvNo

right('000000000000'+in_num,12) = InvNo.PadLeft(12, "0")

這將防止使用in_num上的任何索引。

您沒有提到正在使用哪個數據庫,但是如果它支持計算列,則可以通過為填充行創建計算列來提高查詢速度,然后可以在其上創建索引。

當然,這是假設您不能為發票編號使用簡單的整數類型。 如果可以按原樣使用in_no,請確保在該列上有一個索引。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM