Выбор записей за последние два месяца с группировкой по минутам и первой секунды.
есть поле datetime (0000-00-00 00:00:00)
есть много записей. Архив изображений с камеры. Пишется каждую секунду, когда движение. Последнее движение могло быть и неделю назад
вообщем нужно отсортировать по минутам с первой секунды на два месяца назад (с выводом 30-50 записей).
не получается совсем у меня запрос в запросе делать (((
Помогите кто чем может? :)
вот то что получилось сделать самому, но немного неправильно:
Код:
SELECT image_datetime FROM (SELECT * FROM archive WHERE camera_id='$camera[camera_id]' AND image_datetime>='2013-05-01 00:00:00' AND image_datetime<='2013-07-31 23:59:59' ORDER BY image_datetime DESC) AS date_val GROUP BY MINUTE(date_val.image_datetime), date_val.image_type ORDER BY date_val.image_datetime DESC LIMIT 16
Заранее благодарен за хоть какую-то помощь :)
Тогда всё правильно в запросе, кроме условий во внутреннем запросе. Его нужно писать либо так (смотри на скобки в кондициях):
Код:
SELECT *
FROM
archive
WHERE
camera_id = '{$camera["camera_id"]}'
AND (image_datetime >= '2013-05-01 00:00:00'
AND image_datetime <= '2013-07-31 23:59:59')
FROM
archive
WHERE
camera_id = '{$camera["camera_id"]}'
AND (image_datetime >= '2013-05-01 00:00:00'
AND image_datetime <= '2013-07-31 23:59:59')
Код:
SELECT *
FROM
archive
WHERE
camera_id = '{$camera["camera_id"]}'
AND image_datetime BETWEEN '2013-05-01 00:00:00' AND '2013-07-31 23:59:59'
FROM
archive
WHERE
camera_id = '{$camera["camera_id"]}'
AND image_datetime BETWEEN '2013-05-01 00:00:00' AND '2013-07-31 23:59:59'
Все заворкало правильно. )