Вы же не знаете, как на самом деле MySQL хранит внутри себя даты в форматах DATETIME и TIMESTAMP. Если вы думаете, что в том же формате, в котором дата отдаётся при выборке SELECT-ом из такой колонки, то вы заблуждаетесь Это всего лишь отображение (формат отображения, но не хранения), и да, он таки для удобства восприятия программиста.
Если в базе миллионы строк и вам нужно делать выборки с вычислением дат, то если всё хранить в varchar и парсить на php, то придётся каждый раз делать полную выборку.
А скажите уважаемый, как же быть с последней ПЯТНИЦЕЙ месяца?
где в DATETIME или TIMESTAMP хранится про пятницу?
Всё-таки, форматы хранения дат и времени не просто так придумали, согласитесь Если все запросы на выборку ограничиваются лишь условиями "больше" или "меньше" определённой даты/времени, то можно хранить и в формате INT. Если же запись/выборка из базы делается, например, с учётом часовых поясов, с учётом перевода часов на летнее время, или с какими-либо вычислениями дат, то несомненно лучше использовать специальные форматы. (Пример: выбрать из базы всех пользователей, зарегистрировавшихся в последнюю пятницу каждого месяца)
Да ладно, форматы хранения дат придумали, чтобы не читать числа типа 71234091284.
INT'ы по определению сравниваются быстрее.
По поводу последней пятницы каждого месяца, где в DATETIME или TIMESTAMP хранится про пятницу? Для подобных случаев лучше дату форматировать в PHP (Python, Ruby, Perl, Java по вкусу) и =хранить в базе как VARCHAR
Хранение в DATETIME и TIMESTAMP даст выигрыш при выборке с использованием функций работы с датами.
dima_tr, уточни тебя интересуют сайты в зоне ru или русскоязычные сайты Интернета?
Какие ужасные вещи вы говорите.
Я предлагал в PHP вычислить дату, а дальше после WHERE сравнения.
Но вы правы, если такой запрос работает,
WHERE dt=(LAST_DAY(dt)-INTERVAL(MOD(DAYOFWEEK(LAST_DAY(dt))+1,7))DAY)
то он сработает намного быстрее.
И каков же запрос?
Orangesoda добавил 18.12.2010 в 12:35
Вообще-то, знаю.
DATETIME - число вида YYYYMMDDHHMMSS
TIMESTAMP - число, равное количеству секунд, прощедшее сами знаете с какого момента
Если вы думаете, что в том же формате, в котором дата отдаётся при выборке SELECT-ом из такой колонки, то вы заблуждаетесь
Это всего лишь отображение (формат отображения, но не хранения), и да, он таки для удобства восприятия программиста.
Здравия желаю, товарищ капитан!
Если в базе миллионы строк и вам нужно делать выборки с вычислением дат, то если всё хранить в varchar и парсить на php, то придётся каждый раз делать полную выборку.
А скажите уважаемый, как же быть с последней ПЯТНИЦЕЙ месяца?
ТС, проведите тесты и все!
Если все запросы на выборку ограничиваются лишь условиями "больше" или "меньше" определённой даты/времени, то можно хранить и в формате INT.
Если же запись/выборка из базы делается, например, с учётом часовых поясов, с учётом перевода часов на летнее время, или с какими-либо вычислениями дат, то несомненно лучше использовать специальные форматы.
(Пример: выбрать из базы всех пользователей, зарегистрировавшихся в последнюю пятницу каждого месяца)
Да ладно, форматы хранения дат придумали, чтобы не читать числа типа 71234091284.
INT'ы по определению сравниваются быстрее.
По поводу последней пятницы каждого месяца, где в DATETIME или TIMESTAMP хранится про пятницу? Для подобных случаев лучше дату форматировать в PHP (Python, Ruby, Perl, Java по вкусу) и =хранить в базе как VARCHAR
Вот с этим соглашусь.
Пусть лучше хранится в INT
GAMMA,
По поводу плагинов, какие, на ваш взгляд, наиболее востребованы?
Какие еще есть мнения?
5130,
и какие плюсы вы видите в DLE и WordPress?
vryb, а сами-то вы что думаете по поводу блога?