| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > как найти последнюю дату |
| Автор: Gold Dragon 15.11.2005, 13:57 |
| У меня дата храниться в следующем виде `data_user` varchar(8) NOT NULL default '00000000' и соответственно даты записываются к примеру 15112005 Как мне составить запрос чтобы найти последнюю дату? |
| Автор: Kesh 15.11.2005, 14:05 | ||
| Red Dragon тебе надо будет преобразовывать 15112005 в 20051115 - а тогда уже сортировать по убыванию... или преобразовывать varchar в date - а там уже опять по убыванию... Добавлено @ 14:14 Что-то вроде этого... Проверить сейчас не могу - нету мускула под рукой...
|
| Автор: Gold Dragon 15.11.2005, 14:31 |
| Kesh что-то не работает... поясни что там где PS а тупо найти максимальное значение по полю не получится? |
| Автор: Ignat 15.11.2005, 14:46 | ||||
В том варианте который есть нет.
С ошибкой или без? |
| Автор: Kesh 15.11.2005, 15:42 | ||
| Red Dragon может быть из-за || - это символ объединения строк... вместо него можно использовать +... А там идет просто склеивание последних четырех символов (год) с двумя средними (месяц) и с двумя первыми (дата)... Добавлено @ 15:43
или CONCAT |
| Автор: Gold Dragon 15.11.2005, 16:24 |
| я запускаю запрос в phpMyAdmin и он мне выдаёт, какой то странный результат.. таблицу с одним полем data_sort и со значениями 1 Добавлено @ 16:25 т.е. в таблице 23 записи... и выходит 23 записи, но с единицами |
| Автор: Ignat 15.11.2005, 16:32 | ||||
А так? |
| Автор: Kesh 15.11.2005, 17:57 |
| Блин, ну дайте до дома добраться... Я обязательно посмотрю... Дома... На своем мускуле... |
| Автор: sergejzr 15.11.2005, 18:15 |
| Храни время нормально! Иначе рано или поздно это всё равно боком выйдет! |
| Автор: Gold Dragon 16.11.2005, 09:18 |
| Ignat всё работает отлично только поясните сам запросс... . возвращается новая строка из 4-х справа + 2 начиная с третьей позиции + 2 слева? а дальше что, создаётся временная таблица? |
| Автор: Kesh 16.11.2005, 10:42 | ||
| Red Dragon Да нет... просто по этой новой строке и идет сортировка... Добавлено @ 10:44 А вообще...
|
| Автор: Gold Dragon 16.11.2005, 11:30 |
| Kesh мне так удобнее хранить, просто на сайте так формируется... хотя подумаю PS зато расширил свои познания в запросах |
| Автор: Kesh 16.11.2005, 11:38 |
| Red Dragon а ты себе представь, какая нагрузка ляжет на сервер при разбиении склеивании строк, когда этих строк в запросе станет более 10000... Ведь даже при выборе по LIMIT у тебя пееклеиваться буут все строки а потом уже будет срабатывать фильтр... |
| Автор: Ignat 16.11.2005, 12:39 |
| По теме, почитай. http://dev.mysql.com/doc/refman/4.0/ru/date-and-time-types.html |
| Автор: Gold Dragon 16.11.2005, 14:39 |
| вы меня переубедили, буду переделывать на "нормальное" хранение.... а как в этом случае найти последнюю дату? |
| Автор: Ignat 16.11.2005, 14:42 | ||
В случае использования типа date?
|