Вывод данных из базы в формате UNIX_TIMESTAMP

  • Автор темы Автор темы Chinch
  • Дата начала Дата начала
Автор оригинала: Chinch
Почему не должно? Ведь YYYY-MM-DD займет меньше места в базе чем YYYY-MM-DD HH:MM:SS.
Мой вам совет - забейте на такого рода оптимизацию
Я так понял вас это смущает ?
На спичках экономите а чушью занимаетесь
 
Мой вам совет - забейте на такого рода оптимизацию Я так понял вас это смущает ?
Смущает, в таблице будет несколько десятков тысяч записей и предполагаетеся большое количество запросов с сортировкой по дате.

На спичках экономите а чушью занимаетесь
Ещё на занимаюсь, а только спрашиваю.
 
Мешает отсутствие автоматического сохранения текущей даты
ничто не мешает тебе делать это вручную.
непонятно, почему задание значения одного поля не вызывает у тебя вопросов, а другое непременно хочется автоматически.
И тем более непонятно, почему так важно записать каждое обновление, но время при этом не учитывать.
 
непонятно, почему задание значения одного поля не вызывает у тебя вопросов, а другое непременно хочется автоматически.
Если есть возможность, то почему бы не сделать ? Я думаю, MySql это сделает быстрей чем специально написанная функция на PHP, и кода будет меньше.

тем более непонятно, почему так важно записать каждое обновление, но время при этом не учитывать
В прошлый раз не правильно написал, при обновлении ТАБЛИЦЫ (не страницы). Т.е. при добавлении новой записи в таблицу.
 
но ты же ОБНОВЛЯЕШЬ ТАБЛИЦУ! то есть, составляешь запрос! Какая разница - два значения в него писать, или одно?
 
Какая разница - два значения в него писать, или одно?
Второе значение (дату) придется формировать самому в PHP. Если вдруг возникнет необходимость чтобы данные добавлял скрипт с удаленного сервера может возникнуть проблема с часовыми поясами.
 
Я дико извиняюсь. Ты можешь взять изложить все свои мысли, проблемы, я вот токо услышал про какой то скрипт с удаленного сервера.
Полностью изложить постановку проблемы :)
Когда изложишь сядь почитай ее и подумай все ли мы с ходу поймем
P.S. сорри если не в тему
 
*****
Кажется я был прав.

Chinch
Я хочу Вас удивить! В MySQL есть такая замечательная функция - NOW()!

Например:
[sql]
UPDATE `table` SET `name` = 'qqq', `last_join_date` = NOW() WHERE `id` = '4'
[/sql]
 
в данном случае, скорее curdate()
но дела это не меняет. проблемы,имхо, все высосаны из пальца.
 
Ну вот, родили наконец то!
PHP:
INSERT  `users` SET  `reg_date`= CURDATE( )
Всем спасибо, за соучастие в процессе.
 
если бы ты сразу удаленный сервер родил вместе с часовыми поясами, то решил бы свою проблему быстрее ;-)
 
Удаленный сервер тут не причем.
Вопрос с самого начала был поставлен очень конкретно.
Как в phpMyAdmin настроить таблицу так, что бы reg_date хранилась в формате YYYY-MM-DD , а не YYYY-MM-DD HH:MM:SS ?
Куда ещё понятней то ?
 
Уважаемый уж что что а CURDATE() не относится к вопросу настройки таблицы - настроить таблицу для хранения YYYY-etc можно лишь с помощью типа данных TIMESTAMP. А то что вы сказали, что родили наконец то, так это относится к инициализации значений базы данных
Вы поняли разницу ?
 
CURDATE() не относится к вопросу настройки таблицы
Знаю, что не относится просто другого способа я не нашел.
настроить таблицу для хранения YYYY-etc можно лишь с помощью типа данных TIMESTAMP
Можно, только вот никто не может сказать, как это сделать.
 
Chinch, использовать CURDATE() имеет смысл, если у тебя с нескольких серверов запросы идут. Иначе это просто одна из альтернатив. А от сокращения запроса на 10 символов он быстрее выполнятся не будет

Можно, только вот никто не может сказать, как это сделать.
можно, для этого нужно использовать соответствующий тип данных
 
ALTER TABLE ADD COLUMN `test_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Я писал это еще не знаю когда
 
ALTER TABLE ADD COLUMN `test_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Примерно, такой запрос я и использовал изначально.
PHP:
ALTER TABLE `tbl_name` ADD `date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP;
Только новые записи в таблице все равно имеют формат YYYY-MM-DD HH:MM:SS.

А от сокращения запроса на 10 символов он быстрее выполнятся не будет
Ну хотя бы обоснуйте это.
Допустим у меня есть таблица, в ней 50 тыс. записей (заказчик твердит про миллион записей). К ней постоянно идут запросы типа
PHP:
SELECT * FROM `tbl_name` WHERE `date`....... ORDER BY `date`
Объясните, почему если я вместо формата YYYY-MM-DD HH:MM:SS буду использовать YY-MM-DD скорость обработки запроса не изменится?
 
Сверху