SQL Найти количество непрерывно повторяющихся значений
Есть таблица readed_books
| id | author_id | message | is_read |
|---|---|---|---|
| 1 | 1 | asd1 | 1 |
| 2 | 2 | asd2 | 0 |
| 3 | 2 | asd3 | 0 |
| 4 | 3 | asd4 | 1 |
| 5 | 1 | asd5 | 1 |
Надо найти количество непрерывно идущих единиц в поле is_read, начиная с конца таблицы. Нужно сделать без применения оконных функций. Для такой таблицы ответ должен быть : 2.
Ответы (1 шт):
Автор решения: Protect children of Donbas2014
→ Ссылка
Берём максимальный id, где 0, и считаем id после него:
SELECT COUNT(id) FROM readed_books
WHERE id>(SELECT MAX(id) FROM readed_books WHERE is_read=0);