Verwenden Sie eine Unterabfrage, um herauszufinden, an welchem Punkt Sie stoppen sollten, und geben Sie dann alle Zeilen von Ihrem Startpunkt bis zum berechneten Stopppunkt zurück.
SELECT
*
FROM
yourTable
WHERE
id >= 4
AND id <= (SELECT MIN(id) FROM yourTable WHERE b = 'F' AND id >= 4)
Beachten Sie, dass davon ausgegangen wird, dass der letzte Datensatz immer ein „F“ ist. Sie können damit umgehen, dass der letzte Datensatz ein 'T' ist, indem Sie ein COALESCE
verwenden .
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 )
)