Saya memuat SQLfiddle di sini:http://sqlfiddle.com/#!2/5349a/1 Namun, dalam data sampel Anda, Anda memiliki dua ID=5. Saya membuatnya unik. Juga data SQLFiddle saya tidak cocok dengan milik Anda lagi karena saya mengubah beberapa nilai untuk memastikannya berfungsi. Bersenang-senanglah dengannya :) (Ini berfungsi dengan melihat nilai ID terbesar untuk urutannya)
Coba ini:
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