我正在查詢兩個表之間的連接,請檢查下面的例如SQL-列數據類型差異和性能影響
您會注意到用於nTransactionId屬性的數據類型之間存在差異。
Table_1
Column Name Data Type
______________________________________
nTransactionld numeric(18, O)
sValue varchar(50)
Table_2
Column Name Data Type
______________________________________
nTransactionld bigint
sValue varchar(50)
在使用數字(18,0)數據類型的「TABLE_1」表,並在「TABLE_2」表,數字(18,0)數據類型被使用。
由於這是可能用於外鍵關係的屬性(請參閱下面的查詢),這是否會導致一些性能問題。
SELECT * FROM dbo.Table_1
INNER JOIN dbo.Table_2
ON dbo.Table_1.nTransactionld =dbo.Table_2.nTransactionld
我會感謝您的建議對這個
不太確定的性能..但在存儲大小方面,這可能會有所幫助:http://social.msdn.microsoft.com/Forums/sqlserver/en-US/d12a3913-b5ad-44e1-b627-c0f9cad3656c/numeric-vs-int-and-bigint?forum = transactsql –
這是一個實際問題(在這種情況下爲什麼?)還是隻是一個學術問題? – bhs