Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Вывод данных между двумя датами / 11 сообщений из 11, страница 1 из 1
16.10.2013, 16:22:18
    #38429938
make.kz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
Добрый вечер, Форумчане!

У меня такая дилемма - есть два поля где даты хранятся в INTEGER(14).
Это я использую, чтобы в PHP выводить даты типа d.m.Y

Как мне вывести все суммы между двумя датами?

Вот данные в таблице
Поле paydate - int(14)
Поле payment - float(10,2)

Я пробовал писать
SELECT DATE_FORMAT(paydate, '%Y-%m-%d') FROM buh_payrolls GROUP BY DATE_FORMAT(paydate, '%Y-%m-%d'), но дата не выводится, я так понимаю такого рода запрос используется для TIMESTAMP.

Помогите, уже целый день потерял на решение этой задачи.

Спасибо, заранее.
...
Рейтинг: 0 / 0
16.10.2013, 16:27:52
    #38429949
make.kz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
Я так подумал там вроде как должно быть условие WHERE paydate BETWEEN first AND second? Но не знаю как его использовать в моей ситуации (((
...
Рейтинг: 0 / 0
16.10.2013, 16:33:07
    #38429958
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
Покажите, как кодируете дату в INTEGER.

И почему было не выбрать нормальный тип DATE ?
...
Рейтинг: 0 / 0
16.10.2013, 16:37:22
    #38429973
make.kz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
miksoftПокажите, как кодируете дату в INTEGER.

И почему было не выбрать нормальный тип DATE ?
Я ее кодирую в PHP.
strtotime($date);

В итоге в БД хранится запись в INTEGER такого вида: 1381449600.
Это разница в секундах от 01.01.1970 года.

Не храню в DATE потому что в SQL я не очень, и с форматами данных не дружу. Мне проще выводить даты типа d.m.Y в PHP.
...
Рейтинг: 0 / 0
16.10.2013, 17:38:27
    #38430121
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
make.kzВ итоге в БД хранится запись в INTEGER такого вида: 1381449600.
Это разница в секундах от 01.01.1970 года.***! ещё один, не знающий или намеренно отказавшийся от timestamp. "...доктор, они на свет лезут!"
make.kzЯ так подумал там вроде как должно быть условие WHERE paydate BETWEEN first AND second? Но не знаю как его использовать в моей ситуациину вы же как-то записываете даты, приводя их перед записью к инту, что вам мешает точно так же привести ваши first AND second к интам и подставить в запрос?..
...
Рейтинг: 0 / 0
16.10.2013, 19:27:41
    #38430286
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
make.kz,
А зачем же ты даты хранишь как числа? Храни как даты.
...
Рейтинг: 0 / 0
17.10.2013, 07:31:19
    #38430607
make.kz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
tanglir, Да подставить в BETWEEN два INTa не проблема, я это сделал, только у меня вывод идет одна и та же дата выходит по несколько раз, а надо чтобы одной датой суммировались платежи.
В общем сам вид таблицы такой

10.01.2013 | 15000
10.01.2013 | 20000
11.01.2013 | 10000
11.01.2013 | 10000

А должно

10.01.2013 | 35000
11.01.2013 | 20000

GROUP BY paydate тоже не помогает, и в принципе понятно почему )))
...
Рейтинг: 0 / 0
17.10.2013, 07:45:28
    #38430611
make.kz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
В общем добавил поле DATE. Им буду выводить отчеты. Всем спасибо!
...
Рейтинг: 0 / 0
17.10.2013, 07:51:43
    #38430614
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
Код: sql
1.
group by paydate % (60*60*24)

В этом проблема группировки?
...
Рейтинг: 0 / 0
17.10.2013, 07:53:09
    #38430616
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
То есть не остаток, конечно, а целочисленное деление (DIV), перепутал :)
...
Рейтинг: 0 / 0
17.10.2013, 10:59:36
    #38430877
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод данных между двумя датами
Cygapb-007
Код: sql
1.
group by paydate % (60*60*24)

интересно, from_unixtime(paydate) сработает? судя по ману, должен.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Вывод данных между двумя датами / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]