привет и извините мои плохие английские слова.Как получить данные в виде сгруппированных строк в mysql
мне нужна помощь в MySQL Query
У меня есть таблица с именем MyTable включают следующие столбцы
- столбец для идентификатора (автоматическое приращение).
- столбец для времени (в метке времени).
- column для данных.
Мне нужно получить данные, сгруппированных по дням и каждый день с его данными, но данные на каждый день не должен превышает 3 строки и подсчет останков строк на каждый день, и весь кол-группы не должен превышает 9 групп, как предел
(mytable)
id | time | data
----------------------
1 | 1366553067 | data1
2 | 1366546958 | data2
3 | 1366546951 | data3
4 | 1366546953 | data4
5 | 1366546931 | data5
6 | 1366545926 | data6
7 | 1366564550 | data7
8 | 1366548683 | data8
----------------------
- Примечание: // время штамп в верхней не является правильным.
Мне нужен результат, похожий на эту таблицу.
(the result table)
time | data | count of remains row
-----------------------------------------------
april 12 2013 | data1 | 3
april 12 2013 | data2 | 3 // group one
april 12 2013 | data3 | 3
april 13 2013 | data7 | 0 // group two
april 14 2013 | data8 | 0 // group three
------------------------------------------------
Что я должен писать в запросе!?
Я буду очень рад за любую помощь.
Что вы имеете в виду под «а все кол-групп не должна превышает 9 групп, как предел»? Что произойдет, если 12 апреля 2013 года будет 10 записей или 12 записей. Что произойдет, если 13 апреля осталось 7 оставшихся строк ?. Я также предложил бы переписать весь абзац в виде нескольких предложений. И замените временные метки датами. – koriander
Почему, почему, почему-ой-*** почему *** вы храните метки времени как целые числа, а не как ... ооооо ... скажем, ['TIMESTAMP'] (https://dev.mysql.com/ док/о/datetime.html)? – eggyal
Я имею ввиду, что мне нужно отображать только последние 9 дней, мне нужна моя логика программы. –