Использование SQL Server 2005 и 2008.
У меня есть потенциально очень большая таблица (потенциально сотни миллионов строк), состоящая из следующих столбцов:
CREATE TABLE (
date SMALLDATETIME,
id BIGINT,
value FLOAT
)
, который разбивается на столбец date
в ежедневных разделах. Тогда возникает вопрос: должен ли первичный ключ быть на date, id
или value, id
?
?
Я могу себе представить, что SQL Server достаточно умен, чтобы знать, что он уже разбивается на date
, и поэтому, если я всегда запрашиваю целые куски дней, я могу иметь его вторым в первичном ключе. Или я могу представить, что для SQL Server этот столбец должен быть первым в первичном ключе, чтобы получить выгоду от разделения.
Кто-нибудь может дать некоторое представление о том, каким образом должна быть введена таблица?