2个SQL语句的区别

方法一:

DECLARE @r varchar(8000)

SET @r = ''

select @r=@r+'/'+ (select entCode from FDAEnterprise where EntID=entperJob.entid) from EntPerJob where PerID=21885

print @r

 

方法二:

DECLARE @r varchar(8000)

SET @r = ''

select @r=@r+'/'+ temp.entCode from (select entCode from FDAEnterprise where EntID in (select EntID from EntPerJob where PerID=21885)) temp

print @r

区别?

 

结果一:

/0201000032/0201000032/0201000032/0201000032/0102000016  有重复

 

结果二:

/0102000016/0201000032    无重复

 

 

 

 

方法1:

select temp.pharmacisttypeid,count(*) as num from ( select pharmacisttypeid from JobNameAndPharmacistTypeRelation b
inner join
(select jobid from entperjob where entid=5 ) a 
on b.jobid=a.jobid where b.fdaid=101) temp
group by temp.pharmacisttypeid

消除重复

 

方法2:

select temp.pharmacisttypeid,count(*) as num from ( select * from JobNameAndPharmacistTypeRelation
where jobid in (select jobid from entperjob where entid=5) and fdaid=101) temp group by temp.pharmacisttypeid

有重复

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值