Хранение дат в mysql: Сравнение производительности различных методов для Date

Теперь у меня в голове три варианта.

1-й -> четыре столбца (дата, месяц, год, день ) => 28, 03, 2011, 1 Я могу легко искать и изменять эти столбцы без дополнительного изучения дат mysql.

2nd -> один столбец Date (dd-mm-yyyy) => 28-03-2011 Для этого требуется только один столбец, что упрощает управление, поскольку для поиска дат существует только один параметр WHERE. Но я не знаю, как мне искать во всех записях, скажем, конкретный день. Допустим, все данные для всех понедельников в прошлом или все данные для всех 28-го числа.

3-й -> два столбца (временная метка unix для сегодняшней даты, день) => 1827328721, 1 Теперь здесь я могу хранить данные в виде метки времени и легко выполнять поиск и сравнения, просто получая дату и затем превращая ее в метку времени unix, а затем используя ее в sql. Для дня я могу использовать столбец дня.

Теперь вопросы следующие:

  1. Чем отличается производительность этих методов?
  2. Как будут строиться запросы для выбора, вставки и обновления для этих различных предлагаемых решений?
  3. Какое из них, по вашему мнению, лучше всего и почему?

Пожалуйста, ответьте на все три вопроса подробно. Потому что я не могу найти эту информацию в другом месте, и я знаю, что у stack overflow есть блестящие программисты, которые могут очень связно ответить на этот вопрос. Этот вопрос будет полезен не только новичку вроде меня, но и другим новичкам, которые могут использовать его для справки.

Заранее благодарим сообщество Stack overflow.

6
задан Vish 28 March 2011 в 19:35
поделиться