distinct 多列

 create   table   #tem  
  (  
      co1   varchar(10),  
      co2   int  
  )  
   
  insert   into   #tem   values('A',1)  
  insert   into   #tem   values('A',2)  
  insert   into   #tem   values('A',3)  
  insert   into   #tem   values('A',4)  
  insert   into   #tem   values('B',1)  
  insert   into   #tem   values('B',2)  
  insert   into   #tem   values('C',1)  
  insert   into   #tem   values('D',2)  
   
  --会生成以下结果  
  co1   co2  
  A         1  
  A         2  
  A         3  
  A         4  
  B         1  
  B         2  
  C         1  
  D         2  
   
  --怎么样得到以下数据?  
  co1       co2  
  A           1  
  B           1  
  C           1  
  D           2  

 

select   co1,min(co2)   from   #tem   group   by   co1

 

    select   co1,co2   from   #tem   A   Where   co2   In   (Select   Min(co2)   from   #tem   Where   co1=A.co2)  

 

如果想的到最小的,可以用楼上写的或者是我写的  
   
  select   aa,min(bb)   from   #test   group   by   aa  
   
  select   co1,co2   from   #tem   A   Where   co2   In   (Select   Min(co2)   from   #tem   Where   co1=A.co1)  
   
   
  如果是想得到第一个,可以这样:  
   
  select   co1,co2   from   #tem   A   Where   co2   In   (Select   TOP   1   co2   from   #tem   Where   co1=A.co1)  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值