|
Имеет ли смысл индексирование булевной колонки таблицы значений? |
☑ |
0
SeiOkami
16.08.16
✎
14:35
|
Добрый день
Подскажите, есть ли смысл в том, чтобы в ТЗ добавлять индекс колонки булевного типа? Имеет ли вообще смысл в индексации по булеву?
|
|
1
H A D G E H O G s
16.08.16
✎
14:36
|
Че бы нет?
|
|
2
butterbean
16.08.16
✎
14:36
|
если только ее одну, то наверно нет смысла
|
|
3
H A D G E H O G s
16.08.16
✎
14:37
|
Если конечно нет равномерного распределения по Истина/Ложь
Например 50% записей - Истины по данной колонки, 50% - Ложь - тогда не стоит.
10% и 90% - стоит
|
|
4
SeiOkami
16.08.16
✎
14:37
|
(1), слышал мнение, мол индексация булева бесполезна. Решил узнать мнение мистян
|
|
5
SeiOkami
16.08.16
✎
14:38
|
(3), конкретно в моём примере скорее даже 1 к 99 будет
|
|
6
H A D G E H O G s
16.08.16
✎
14:38
|
(5) Ты будешь эти 1 из 99 искать?
|
|
7
Garykom
гуру
16.08.16
✎
14:42
|
(3) >Например 50% записей - Истины по данной колонки, 50% - Ложь - тогда не стоит.
Ускорение выборки на порядки этого мало?
|
|
8
SeiOkami
16.08.16
✎
14:42
|
(6), не совсем. Нужно будет разделять одну ТЗ на две. Сейчас делаю два раза Скопировать() (с Ложь и с Истина)
|
|
9
H A D G E H O G s
16.08.16
✎
14:45
|
(8) 1 раз? Забей!
|
|
10
SeiOkami
16.08.16
✎
14:45
|
(6), (8), в принципе, можно заменить на одно копирование дополнив его циклом с удалением из общей таблицы 1% строк
|
|
11
SeiOkami
16.08.16
✎
14:45
|
(9), просто строк в ТЗ 2-3 млн. Пользы индекс не даст?
|
|
12
hhhh
16.08.16
✎
14:45
|
(7) чего это на порядки? В 2 раза ускорит. В среднем.
|
|
13
Garykom
гуру
16.08.16
✎
14:47
|
(12) Неа в случае выборки идет перебор в цикле по условию. А если есть индекс то тупо берутся записи с нужными номерами.
Но с учетом что поддержание индекса тормозит работу с данными в ТЗ то в среднем может быть даже хуже.
|
|
14
H A D G E H O G s
16.08.16
✎
14:52
|
(11) нет
|
|
15
SeiOkami
16.08.16
✎
15:03
|
(14), спасибо
|
|