Jag laddade en SQLfiddle här:http://sqlfiddle.com/#!2/5349a/1 Men i dina exempeldata hade du två ID=5. Jag gjorde det unikt. Min SQLFiddle-data stämmer inte överens med dina längre eftersom jag ändrade några värden för att se till att det fungerade. Ha kul med det :) (Detta fungerar med det största ID-värdet för sekvensen)
Prova detta:
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