簡體   English   中英

C#SQL Server - 通過數據訪問多個數據庫或多個循環更高效?

[英]C# SQL Server - More Efficient for Multiple Database accesses or multiple loops through data?

在我的應用程序的一部分,我必須得到滿足條件的表的最后一個ID例如:

SELECT(MAX) ID FROM TABLE WHERE Num = 2

所以我可以抓住整個表並循環查找Num = 2,或者我可以從Num = 2的表中獲取數據。在后者中,我知道最后一項將是MAX ID。

無論哪種方式,我必須做大約50次...所以更有效地抓取所有數據並循環查找特定條件的數據列表...

或者根據條件多次獲取數據會更好..我知道列表中的最后一項將是最大ID

我有6個條件,我將基於查詢

我只是想知道哪個更有效...循環遍歷大約3500個項目的列表,或多次點擊數據庫,我已經可以將數據分解為我需要它

我可以代表SqlServer。 如果您創建一個StoredProcedure,其中Num是您傳遞的參數,由於其存儲過程的執行計划的優化引擎,您將獲得最佳性能。 當然,該字段的索引是強制性的。

讓數據庫完成這項工作,這就是它的目的。

該表的插入頻率是否很高? 它是否具有較高的更新頻率,特別是在您應用MAX功能的列上? 如果答案為否,您可以考慮添加IS_MAX BIT列並使用插入觸發器進行設置。 這樣,你想要的行基本上是緩存的,查找起來很簡單。

暫無
暫無

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

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