Använd en underfråga för att ta reda på vid vilken tidpunkt du ska stoppa, och returnera sedan alla rader från din startpunkt till den beräknade stopppunkten.
SELECT
*
FROM
yourTable
WHERE
id >= 4
AND id <= (SELECT MIN(id) FROM yourTable WHERE b = 'F' AND id >= 4)
Observera att detta förutsätter att den sista posten alltid är ett 'F'. Du kan hantera den sista posten som ett 'T' med en COALESCE
.
SELECT
*
FROM
yourTable
WHERE
id >= 4
AND id <= COALESCE(
(SELECT MIN(id) FROM yourTable WHERE b = 'F' AND id >= 4),
(SELECT MAX(id) FROM yourTable )
)