18.01.2014 / 14:02 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Dinisimys, да, всё верно, я почти так и собираюсь сделать.
Последняя проблема. Есть таблица с датой, например id date 1 2014-01-10 2 2014-01-14 3 2014-01-14 4 2014-01-15 5 2014-01-17 6 2014-01-17 7 2014-01-18 То есть даты могут повторяться. Мне нужно извлечь из этой таблицы ровно столько данных, чтобы было 3 уникальных даты в порядке убывания. То есть: 4 2014-01-15 5 2014-01-17 6 2014-01-17 7 2014-01-18 То есть, если, к примеру, будут 2 записи 18-го числа, 6 записей 17-ого и 23 записи 15-ого, то запрос должен возвратить 31 строку. Если будет 1 запись 18-ого числа, 1 запись 10-ого числа и 2 на 1 января, то вывести все четыре.
Я думаю сделать группировку по дате, отобрать 3 последние записи. Но как потом дальше получить значения не знаю. Может как-то можно одним запросом всё сделать?
__________________
let live |
18.01.2014 / 14:10 | |
Dinisimys Пользователь Сейчас: Offline
Имя: Денис Регистрация: 30.07.2012
| aNNiMON, так и не понял твоего вопроса. Где тут три уникальных даты? 4 2014-01-15 5 2014-01-17 6 2014-01-17 7 2014-01-18 15, 17, 18? Ну а в чем проблема тогда, просто сортируй да и все. ORDER BY там, например
Изменено Dinisimys (18.01 / 14:12) (всего 1 раз) |
18.01.2014 / 14:17 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Dinisimys, ну отсортирую, дальше что? Как мне три даты взять? LIMIT 3 выдаст 5 2014-01-17 6 2014-01-17 7 2014-01-18
15-ое число пропадёт.
__________________
let live |
18.01.2014 / 14:19 | |
Dinisimys Пользователь Сейчас: Offline
Имя: Денис Регистрация: 30.07.2012
| aNNiMON, смотри, тебе надо чтобы они не повторялись?
|
18.01.2014 / 14:23 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Dinisimys, нет, в выборке они должны повторяться, но выбирать надо из трёх уникальных дат.
__________________
let live |
18.01.2014 / 14:48 | |
Dinisimys Пользователь Сейчас: Offline
Имя: Денис Регистрация: 30.07.2012
| aNNiMON, тут скорее всего php понадобится.
Изменено Dinisimys (18.01 / 14:52) (всего 2 раза) |
18.01.2014 / 16:38 | |
Freddy Пользователь Сейчас: Offline
Имя: Игорь Откуда: Воронеж Регистрация: 30.01.2010
| aNNiMON, SELECT s1.id, s1.date
FROM stat as s1
JOIN (
SELECT date
FROM stat
GROUP BY date
LIMIT 3
) as s2 on s1.date = s2.date
ORDER BY date DESC;
|
18.01.2014 / 17:00 | |
Freddy Пользователь Сейчас: Offline
Имя: Игорь Откуда: Воронеж Регистрация: 30.01.2010
| пропустил ORDER BY date DESC во внутреннем запросе
|
20.01.2014 / 12:22 | |
Koenig Модератор форума Сейчас: Offline
Имя: Дмитрий Откуда: Калининград(Koenigsberg) Регистрация: 23.01.2011
| aNNiMON, group by date
__________________
Магистр Мёда |