2013-10-14 17 views
-2

我有2個表格,其中有50列以上,150,000行以上。這兩個表都在關係(主鍵和外鍵)中。如何提高SQL Server中的表性能

我想運行查詢從兩個表中獲取記錄,但需要很長時間才能執行。

我如何提高兩個表的性能?

請幫我一把。

+1

如果您需要一些幫助,我們將需要更多信息。查詢,您正在使用的DBMS等。 – Linger

+0

您可以將表格歸一化爲多個表格。修剪舊的行..緊湊/縮小數據庫以刪除任何空白區域。 – Leptonator

回答

2

你應該提供更多的信息和準確的SQL,這裏的任何方式都是一些基礎知識(假設使用SQL)

  • 請確保您有對每個表定義的索引。

  • 確保只返回所需的列

  • 確保數據類型是在FK/PK一樣(如果你的FK是合乎邏輯的)

  • 儘量不要在WHERE使用功能 - 有時你會得到性能下降,如果你做

  • 儘量不要使用,或者在 - 有時你會得到性能下降,如果你做

  • 獲取執行計劃並查看是否使用索引。

再次,需要更多信息。

0

請提供使用的查詢......

請確保您有對每個表定義的索引和它們用於在通過查詢子句後立即在哪裏。請不要在查詢中使用Select *,而只使用所需的列和子查詢。只對where子句中的特定條件運行查詢,該子句返回行數減去所有表記錄。在這兩個表中保留使用的鍵列的數據類型相同。

檢查執行計劃,看看是否使用索引。