Сортировка даных с базы MySQL по дате

fill_nick

Новичок
Сортировка даных с базы MySQL по дате

Добрый день!

Прошу помощи.
Есть база даных регистрации входящих звонков (Интернет провайдер). В одной из таблиц записывается время выполнения работ - если у клиента проблема. В случае необходимости оператор может вывести на экран список клиентов и время выполнения работ.

Сортировку по дате выполнения работ я организовал просто: вычетание текущего дня от запланированого дня. И того, можна просмотреть заявки на выполнение работ в правильном порядке только за текущий месяц. Смотреть за следующий месяц и прошлые месяца - оператору нужно выбрать соответственный месяц.

Организовать аналитику по количеству времени для решения проблеммы клиента, если она началась в конце текущего месяца, а заканчивается в этом - сделать очень сложно, так как есть высокосные годы, месяцы с 28, 30,31 днями и т.д.

Подскажите, может можна как-то проще подойти к решению даной проблеммы?
 

God

Новичок
Это что - какой-то албанский провайдер?
Можно всё-таки по-русски описать проблему.
 

Фанат

oncle terrible
Команда форума
для начала, можно ли в терминах базы данных описать вот эту вот строчку:
вычитание текущего дня от запланированого дня
-~{}~ 26.09.07 18:27:

вообще, никких проблем у мускуля с сортировкой дат не бывает. с вычитанием дней или без.
если дата хранится в предназначенном для этого поле
 

fill_nick

Новичок
Проблемма в том, что мне нужно сортировать не по созданию записей в таблице, а по записи в колонке дата, например

29.09.07 дата поступления заявки, а 2.10.07 дата выполнения.

Каким образом мне вычесть количество дней для выполнения заявки? А если еще учесть высокосный год, разное количество дней в месяцах и т.д, то тогда как?
 

Фанат

oncle terrible
Команда форума
никаких проблем у мускуля с сортировкой дат не бывает. с вычитанием дней или без.
если дата хранится в предназначенном для этого поле

ты уверен, что прочитал этот мой ответ чуть выше?
 

fill_nick

Новичок
Автор оригинала: *****
никаких проблем у мускуля с сортировкой дат не бывает. с вычитанием дней или без.
если дата хранится в предназначенном для этого поле

ты уверен, что прочитал этот мой ответ чуть выше?
Спасибо, буду разбиратся с MySQL
 

fill_nick

Новичок
Извините, чтото я туплю в МайСкуэле. Как сделать правильный запрос, чтобы получить разницу в днях от текущего дня?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
звините, чтото я туплю в МайСкуэле. Как сделать правильный запрос, чтобы получить разницу в днях от текущего дня?
Читать внимательно 3-ю ссылку Фaната
 

fill_nick

Новичок
Я прочитал. Так функция DATE_SUB(date,INTERVAL expr type) может оперировать с конкретной датой и интервалом, который можна задавать по разному.

А каким способом вычесть количество дней из текущей даты и даты с которой началась работа?
 

fill_nick

Новичок
Mr_Max

Спасибо за очередной Ман - Вы по сути повторили то, что сделали до Вас ***** и hammet. Как видите, толку с этого ноль.

Ладно буду реализовывать это на ПШП. Переведу даты в юникс время, отниму разницу. Полученый результат в секундах умножу на 60 и на 24 - получу результат в днях.

Спасибо всем.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
fill_nick
По ссылке первый пример почти Ваш случай.
 

fill_nick

Новичок
Разобрался. Это делается с помощью функции TO_DAYS().

TO_DAYS(data1) - TO_DAYS(data2) = количество дней между этими датами.
Где data1 и data2 - поля базы даных в которых хранятся Ваши даты.

Плохо что в примерах которые наводили учасники форума, описание даной функции не было. Она мельком споминалась, но ракурс ее был непонятен.

Довольно доступно и с примерами можна посмотреть тут

http://www.williamspublishing.com/PDF/5-8459-0515-X/part.pdf
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
fill_nick
Куда-уж понятнее
TO_DAYS(date)
функция возвращает номер дня для даты, указанной в аргументе date, (количество дней, прошедших с года 0):
?

-~{}~ 30.09.07 00:43:

Довольно доступно и с примерами можна посмотреть тут
Мануал тоже неплох.

-~{}~ 30.09.07 00:44:

.


То что Вы чего-то там не дочитали - это лично Вашы проблемы.
 

fill_nick

Новичок
Mr_Max

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

Короче, не програмист я, нет у меня на это данных... :)
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
fill_nick
Не в том дело. Если три человека советуют практически идентичные ссылки, то, наверное стоит их внимательно посмотрть несколько раз. ;)
Все.
 
Сверху