日期:2014-05-18 浏览次数:20587 次
--方法1  
with tb1 as
(
    select '111111' as teacherid,'信息工程系' as department,'计算机应用技术' as professional,'09-1' as classname,'VB 理论 2011-2012第二学期' as coursename union all
    select '111111','信息工程系','计算机应用技术','09-1','Java 理论 2011-2012第二学期' union all
    select '222222','信息工程系','计算机应用技术','09-1','动态网页制作 理论 2011-2012第二学期' union all
    select '222222','信息工程系','计算机应用技术','09-1','动态网页制作 实践 2011-2012第二学期' union all
    select '111111','信息工程系','计算机应用技术','09-1','离散数学 理论 2010-2011第一学期' union all
    select '111111','信息工程系','计算机应用技术','10-1','VB 理论 2011-2012第二学期'
)
select distinct
    department,
    professional,
    classname 
from tb1    
where teacherid='111111'
/*
department professional   classname
---------- -------------- ---------
信息工程系      计算机应用技术        09-1
信息工程系      计算机应用技术        10-1
(2 row(s) affected)
*/
go
--方法2
;with tb2 as
(
    select '111111' as teacherid,'信息工程系' as department,'计算机应用技术' as professional,'09-1' as classname,'VB 理论 2011-2012第二学期' as coursename union all
    select '111111','信息工程系','计算机应用技术','09-1','Java 理论 2011-2012第二学期' union all
    select '222222','信息工程系','计算机应用技术','09-1','动态网页制作 理论 2011-2012第二学期' union all
    select '222222','信息工程系','计算机应用技术','09-1','动态网页制作 实践 2011-2012第二学期' union all
    select '111111','信息工程系','计算机应用技术','09-1','离散数学 理论 2010-2011第一学期' union all
    select '111111','信息工程系','计算机应用技术','10-1','VB 理论 2011-2012第二学期'
)
select 
    department,
    professional,
    classname 
from tb2    
where teacherid='111111'
group by department,
    professional,
    classname
/*
department professional   classname
---------- -------------- ---------
信息工程系      计算机应用技术        09-1
信息工程系      计算机应用技术        10-1
(2 row(s) affected)
*/