[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Дата в MySQL
dgalexei
Подскажите, пжст...
Такая хрень... в БД есть поле date\varchar(10)... в котором хранится дата... базу проектировал не я, в этом и проблема... так вот, у меня на пхп задается интервал дат... по которому нужно сделать выборку... но как искать в таком случае понятия не приложу... формат поля на date менять не то, так как там уже хранятся записи и даты корежит просто... как можно решить мою проблему?



Спустя 5 часов, 2 минуты, 2 секунды (15.06.2011 - 08:34) alex12060 написал(а):
LIKE %12:06:2011%

Спустя 11 минут, 39 секунд (15.06.2011 - 08:46) Семён написал(а):
1) Временно остановить базу (ограничить доступ к ней остальным)
2) Выбрать все записи
3) Сменить тип колонки
4) Обновить все существующие - нужными записями

Спустя 4 часа, 56 минут, 46 секунд (15.06.2011 - 13:43) linker написал(а):
Смотря в каком виде хранятся даты.

Спустя 9 часов, 51 минута, 14 секунд (15.06.2011 - 23:34) dgalexei написал(а):
alex12060
Твой ответ не понятен.. что это и для чего?

Семён
при смене типа колонки меняются и записи причем не так как нужно, а переписывать вручную не оч удобно, записей около 100 уже...

linker int(10) в виде xx.xx.xxxx

Спустя 8 часов, 58 минут, 17 секунд (16.06.2011 - 08:32) linker написал(а):
Видимо таки varchar(10), а не int(10). Мой совет, перевести всё в формат yyyy-mm-dd, но если лень и MySQL не ниже 5-ой версии, то можно извращаться:
SELECT * FROM `table` WHERE STR_TO_DATE(`date`, '%d.%m.%Y') > '2011-06-10' AND STR_TO_DATE(`date`, '%d.%m.%Y') < '2011-06-16'
Еще раз повторю свой свой совет: переведи в формат yyyy-mm-dd, тогда запрос будет банальный:
SELECT * FROM `table` WHERE `date` > '2011-06-10' AND `date` < '2011-06-16'


_____________
Я не флудер , просто мне есть что сказать!
dictum - factum (сказано - сделано).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.