Если вы хотите, чтобы ваша база данных масштабировалась, вы должны следовать одному важному правилу: избегайте функций для каждой строки, таких как if
, coalescse
, case
и yes, date()
и time()
. * 1006. *
Атрибут (столбец) в таблице должен быть наименьшей единицей, которую вы обрабатываете. Если вам нужно выполнить поиск по дате, сохраните дату отдельно. Не объединяйте это в дату и время, когда вам придется извлекать его в ваших select
заявлениях.
Люди, которые объединяют атрибуты в единые поля, такие как дата, в дату-время или, ужас ужасов, список, разделенный запятыми, который вы хотите проверить по отдельным частям, сами себе и своим преемникам наносят огромный ущерб.
Обычно лучше вставить два поля вместе (например, дату и время в дату и время для вашего сценария нумерации страниц), чем пытаться разделить другим способом (для других целей).
Конечно, если вы никогда не намереваетесь использовать дату и время отдельно в своих запросах, или если ваша база данных останется маленькой, не стесняйтесь игнорировать мою напыщенную речь: -)