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

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

Есть некая большая таблица с которой выбираются строки, до 100, обрабатываются и отмечаются как обработанные.
Чисто теоритически как можно простыми средствами на Express оптимализировать индексом.
Создать индекс на столбце "обработан" скорей всего будет слабо, индекс на 99% будет с одним значением. Помогает ли в таких случаях filtered индекс?
22 сен 17, 16:44    [20816866]     Ответить | Цитировать Сообщить модератору
 Re: Выборка нескольких строк с большой таблицы  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4537
mezzanine, какойнить монотонно возр/убыв уникальный атрибут есть?
22 сен 17, 17:00    [20816905]     Ответить | Цитировать Сообщить модератору
 Re: Выборка нескольких строк с большой таблицы  [new]
mezzanine
Member

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

Есть PK с identity. Т.е. можно сделать составной PK+"обработан". О том речь?
22 сен 17, 22:18    [20817413]     Ответить | Цитировать Сообщить модератору
 Re: Выборка нескольких строк с большой таблицы  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5111
mezzanine
Создать индекс на столбце "обработан" скорей всего будет слабо, индекс на 99% будет с одним значением.
чтобы рассуждать за индексы нужно видеть ваш запрос
22 сен 17, 22:45    [20817487]     Ответить | Цитировать Сообщить модератору
 Re: Выборка нескольких строк с большой таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31355
mezzanine
Помогает ли в таких случаях filtered индекс?
Да
23 сен 17, 01:13    [20817655]     Ответить | Цитировать Сообщить модератору
 Re: Выборка нескольких строк с большой таблицы  [new]
komrad
Member

Откуда:
Сообщений: 5244
mezzanine
Создать индекс на столбце "обработан" скорей всего будет слабо, индекс на 99% будет с одним значением.

если будете выбирать по "нет", то это будет супер-селективный индекс
23 сен 17, 02:19    [20817670]     Ответить | Цитировать Сообщить модератору
 Re: Выборка нескольких строк с большой таблицы  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
Однозначно применяйте фильтрованный индекс.
Только нужно помнить, что в момент insert/update/delete/merge таблицы должны быть следующие установки:

  set ansi_padding, ansi_warnings, arithabort, concat_null_yields_null on;
  set numeric_roundabort off;
23 сен 17, 09:14    [20817757]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить