Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Индекс по столбцу с большим текстом  [new]
tartar_
Member

Откуда:
Сообщений: 4
Добрый день.

Имеется таблица Table 1 вида

[Id] [int] IDENTITY(1,1) NOT NULL,
[OutId] [int] NOT NULL,
[Value] [nvarchar](4000) NULL,

Надо ускорить запрос вида

select Id from Table1 where
OutId = ... and Value = ...

Покрывающий индекс построить не могу из-за длины Value.
В большинстве случаев длина Value около 100 - 200.
Что можно сделать? Может вычислимое поле по Value (подстрока длины 100 например) и индекс по нем?
19 окт 12, 19:07    [13348572]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
Crimean
Member

Откуда:
Сообщений: 13147
а запросы на это поле - какие?
19 окт 12, 19:08    [13348578]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
tartar_
Member

Откуда:
Сообщений: 4
Crimean
а запросы на это поле - какие?

на какое поле, на вычислимое?
19 окт 12, 19:20    [13348627]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
Crimean
Member

Откуда:
Сообщений: 13147
tartar_,

я все еще про "[Value] [nvarchar](4000) NULL", ваш КО
19 окт 12, 19:25    [13348646]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
tartar_
Member

Откуда:
Сообщений: 4
Crimean
tartar_,

я все еще про "[Value] [nvarchar](4000) NULL", ваш КО



ясно
я выше уже писал

select Id from Table1 where
OutId = ... and Value = ...

)))
19 окт 12, 19:28    [13348656]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
Владимир Затуливетер
Member

Откуда:
Сообщений: 427
tartar_,

http://msdn.microsoft.com/ru-ru/library/ms189788.aspx
19 окт 12, 19:35    [13348685]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
Гость1314
Guest
Я бы crc или md5 запилил по полю [Value] и индекс по OutId, md5
19 окт 12, 19:36    [13348689]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Гость1314
Я бы crc или md5 запилил по полю [Value] и индекс


если запросы на Value = @Value - очень даже поможет, если можно будет в апликухе делать что-то типа

and computed_crc_of_value = crc( @value ) and value = @value


а вот если всякие LIKE или, тем более, LIKE '%.., то.. решения также были на форуме
впрочем, возможно, полнотекстового хватит
19 окт 12, 19:56    [13348747]     Ответить | Цитировать Сообщить модератору
 Re: Индекс по столбцу с большим текстом  [new]
tartar_
Member

Откуда:
Сообщений: 4
Спасибо! Пойду покурю мануалы)))
19 окт 12, 20:14    [13348785]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить