Edit :ok, maintenant vous avez modifié la question de sorte que cette réponse semble complètement hors de propos... soupir... Je vais la laisser au cas où cela vous aiderait à démarrer. Bravo.
La solution la plus simple compte tenu de vos spécifications :
select teacherid
from mytable
group by teacherid;
Si vous avez besoin d'autres informations en plus du teacherid
:
select teacherid, ...other cols...
from (select teacherid, ...other cols...
row_number() over (
partition by teacherid
order by classid /* or class as per edit */) as row_num
from mytable) my_derived_table
where my_derived_table.row_num = 1;
Caveat emptor :Je n'ai pas d'installation de SQL-Server à portée de main pour tester, donc la syntaxe peut ne pas être exactement correcte ; mais c'est proche.