PUZZLE-13
select R1.course_nbr,R1.student_name,
min(r1.teacher_name),nullfrom register as ra
goup by r1.course_nbr,r1.student_name
having count(*)=1
union
select R1.course_nbr,R1.student_name,
max(r1.teacher_name),
min(r1.teacher_name)
from register as r1
group by r1.course_nbr,r1.student_name
having count(1)=2
union
select r1.course_nbr.r1.student_name,
min(r1.teacher_name),'--more--'
from register as r1
group by r1.course_nbr,r1.student_name
having count(*)>2;