我有一個數據庫,我需要查詢從一個表中獲取記錄,然後在另一個表上查找該值是否存在。該表可能會返回多個記錄,我想要最近的日期。SQL Server的查詢性能查詢表
所以表1基本上是:
ID (Primary Key)
Name
Test_Score
和表2是
Test_Id (Primary)
Student_ID (Foreign Key)
Test_Score
Test_Date
,因爲我經歷的記錄,如果在表2中存在的student_id數據的沒有測試,我想要使用表1中的分數,否則我想使用表2中最近日期的分數。我將這一切全部用C#代碼工作,但客戶端需要在存儲過程中進行報告,而且由於表格非常大,所以我看到了一些性能問題。此外,這個基本的例子實際上發生在多個表上。
我敢肯定有一個優雅的方式來做到這一點,快速和高效,但我似乎無法拿出任何東西,但使用遊標。
有人知道直接的解決方案嗎?
請提供完整的示例代碼,所以它更容易爲我們寫一個解決方案(創建表語句和一些虛擬數據) – 2009-04-21 22:30:57
表名至少會很好,我感覺你的數據庫模式是有點開始。但是,如果不知道更多,我們無法分辨出來 – Louis 2009-04-21 22:33:27