Заредих SQLfiddle тук:http://sqlfiddle.com/#!2/5349a/1 Въпреки това във вашите примерни данни имате два ID=5. Направих го уникален. Също така моите SQLFiddle данни вече не съвпадат с вашите, тъй като промених някои стойности, за да се уверя, че работят. Забавлявайте се с него :) (Това работи като се гледа най-голямата стойност на идентификатора за последователността)
Опитайте това:
SELECT COUNT(*)
FROM (
SELECT Subject, MAX(ID) AS idlimit
FROM t
GROUP BY Subject
ORDER BY MAX(ID) DESC
LIMIT 1,1) as Temp
JOIN t
ON Temp.idlimit < t.id