Я не знаю, лучше ли мне создать новый столбец в моей базе данных Mysql или нет.Должен ли я создать новый столбец базы данных или нет?
У меня есть таблица:
calculated_data (идентификатор, дата, the_value, статус)
статус является логическим.
мне нужно дополнительное значение с именем: the_filtered_value
я могу получить его легко, как это:
ВЫБРАТЬ IF (статус FALSE, 0, the_value) КАК the_filtered_value ОТ calculated_data
Таблица calculated_data
имеет миллионы записей, и я отображаю the_value
и the_filtered_value
в таблицах и таблицах данных (используя php).
ли лучше создать новый столбец the_filtered_value
в calculated_data
таблице или просто использовать SELECT IF
запрос?
В "лучшем" Я вижу:
- лучше в исполнении
- лучше DB дизайн
- легче поддерживать
- ...
Спасибо для вашей помощи!
Трудно сказать.Если вы добавите новый столбец, вам придется заполнить его (медленный, но только один раз) и поддерживать его при обновлении (может замедлить другие рутинные процедуры). Если вы рассчитываете его на лету, это может замедлить ваши запросы. Я честно считаю, что ваш лучший выбор - сделать некоторые тесты времени без столбца, добавить столбец, а затем сделать больше тестов времени и производительности. – FrustratedWithFormsDesigner