2011-11-09 54 views
1

如何查找SQL表中特定行所佔用的空間。在SQL中查找特定行佔用的空間

作爲示例,請考慮以下示例: 有客戶和相關訂單。有客戶表和訂單表。

Table : Customer 
Columns : Id, Name, Address, Occupation 
PK : Id 

Table : Order 
Columns : OrderId, CustomerId, OrderDescription, OrderCost 
PK : OrderId, CustomerId 

運行時有兩個客戶,一個客戶有10個訂單,另一個客戶有100個訂單。

我需要編寫一個查詢,在給定客戶ID的情況下,我應該返回Sql中該特定客戶使用的總字節數。

任何建議或輸入將是非常有益的。

回答

1

你可以計算出該行長度根據這些回答任何行:

然後是增加了每行字節的一個問題。同樣的行結構技術也適用於任何索引。

我沒有爲你寫完整的查詢。如果您知道所有可變長度字段的長度,則非常簡單。注意:使用DATALENGTH,而不是LEN,因爲尾隨空格和ANSI PADDING,並且您需要的字節不是字符。

相關問題