我有一張約3000條記錄的表格,我需要將其導出到csv(通過.net Web應用程序),但是我也需要從大約10個表中提取信息(約3000條記錄每個),使表格更多列,例如Sql Server最有效的加入方式
Individual Table Organisation Table IndividualOrganisation Table
輸出: Individual.Name,Organisation.Name
目前我使用一個存儲proceedure創建臨時表與額外的列(例如,一個用於Organisation.Name等...),那麼即使我將時間延長到200,也會導致SQL連接超時期間過去的錯誤!
在我的存儲過程中構建一個大規模的單個sql語句並執行它會更好嗎?這10個'加入'的表是以存儲過程的用戶選擇爲條件的,當前有ifs序列,然後選擇
有10行3000行的表格。如果你只是加入他們,你會得到3000^10行。這是一個有34個零的數字。 :) – Andomar 2010-08-06 11:17:08
@Andomar:不,你會得到3000行,平均每列多10倍。 – 2010-08-06 11:18:57
只有當你在所有表格之間進行笛卡爾連接時,我懷疑你是真正想要做什麼。 – 2010-08-06 11:22:02