У меня есть таблица SQL, которая имеет 3 столбца (идентификатор, имя, дата и время).
Вот краткий пример:
ID | Name | Datetime |
=============================================
1 | Test 1 | 2014-09-22 22:27:24 |
2 | Test 223 | 2014-09-22 22:27:24 |
3 | Test FAS | 2014-09-22 22:27:24 |
4 | Test SSA | 2014-09-22 22:31:18 |
5 | Test SSA | 2014-09-22 22:31:18 |
6 | Test SSA | 2014-09-22 22:31:18 |
7 | Test SSA | 2014-09-22 22:31:18 |
8 | Test SSA | 2014-09-22 22:31:18 |
Для всех записей, имеющих одинаковый Datetime, мне нужен первый идентификатор (с которого начинается этот datetime), а также последний идентификатор (где этот datetime используется в последний раз).
Я пытаюсь найти правильную команду SQL, чтобы получить этот результат и создать массив следующим образом:
[0] => Array
(
[start] => 1
[end] => 3
[date] => 2014-09-22 22:27:24
)
[1] => Array
(
[start] => 4
[end] => 8
[date] => 2014-09-22 22:31:18
)
Может кто-нибудь дать мне решение, как создать эту команду SQL?
Спасибо!
SELECT
MIN(ID) AS start,
MAX(ID) AS end,
COUNT(*) AS how_many,
`Datetime`
FROM
your_table
GROUP BY `Datetime`
Других решений пока нет …