2010-05-28 37 views

回答

1

一方面,這聽起來非常像意見。數據存儲在表中,並且視圖僅提供對由視圖定義指定的表內的那些列的訪問。 (因此,您的「共同的列」)。另一方面,這聽起來像數據庫引擎如何將數據存儲到硬盤驅動器。在SQL中,這是通過8kb頁面完成的。假設兩個完全分開的定義,則無法在同一頁面中存儲來自兩個此類不同表的數據。 (如果一個Oracle塊更像OS文件的行,那麼它將變成SQL文件和文件組,在這一點上答案是「是」...但我懷疑這不是塊的意思。)

1

不基於我是什麼reading here。在SQL Server中,每個表的頁面都獨立於其他表的頁面。

另一方面,每個表可以有一個聚集索引的選擇,它可以大大影響性能。另外,我認爲分區會影響執行計劃,如果兩個表都有類似的分區功能,這可能會提高性能,但分區的正常目標不是出於性能原因。

通常,JOINS的優化涉及索引策略(根據我的經驗,最好包含非聚集索引)