У меня сегодня действительно засорение...
Как я могу проверить, повторяет ли значение последовательно более 5 раз отрицательно и отмечает их?
Я имею в виду, что их легко маркировать, если они отрицательные, но как проверить, происходят ли они более 5 раз?
ОБНОВЛЕНИЕ: Извините, я не был ясен...
ДАННЫЕ:
+-------+-----------------+ | time | V_preisereadDOT | +-------+-----------------+ | 00:00 | 5 | | 01:00 | 1 | | 02:00 | 2 | | 03:00 | -3 | | 04:00 | -8 | | 05:00 | -9 | | 06:00 | 5 | | 07:00 | 4 | | 08:00 | -9 | | 09:00 | -9 | | 10:00 | -5 | | 11:00 | -5 | | 12:00 | -4 | | 13:00 | -4 | | 14:00 | 6 | | 15:00 | 5 | | 16:00 | 2 | | 17:00 | 4 | | 18:00 | -4 | | 19:00 | -8 | | 20:00 | -9 | | 21:00 | -7 | | 22:00 | 2 | | 23:00 | 8 | +-------+-----------------+
РЕЗУЛЬТАТ:
+-------+-----------------+----------+ | time | V_preisereadDOT | 6negativ | +-------+-----------------+----------+ | 00:00 | 5 | 0 | | 01:00 | 1 | 0 | | 02:00 | 2 | 0 | | 03:00 | -3 | 0 | | 04:00 | -8 | 0 | | 05:00 | -9 | 0 | | 06:00 | 5 | 0 | | 07:00 | 4 | 0 | | 08:00 | -9 | 1 | | 09:00 | -9 | 1 | | 10:00 | -5 | 1 | | 11:00 | -5 | 1 | | 12:00 | -4 | 1 | | 13:00 | -4 | 1 | | 14:00 | 6 | 0 | | 15:00 | 5 | 0 | | 16:00 | 2 | 0 | | 17:00 | 4 | 0 | | 18:00 | -4 | 0 | | 19:00 | -8 | 0 | | 20:00 | -9 | 0 | | 21:00 | -7 | 0 | | 22:00 | 2 | 0 | | 23:00 | 8 | 0 | +-------+-----------------+----------+
Заранее спасибо!
Как насчет чего-то вроде:
SELECT
reading,
COUNT(reading)
FROM data
WHERE negative = 1
GROUP BY reading
HAVING COUNT(reading) > 5