一个简单的查询求解

guanlianan guanlianan 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

--表B_CallNo 数据--
ID CtrlNo CallNo Lib
1 101 TP393 1
2 101 TP393 2

--表B_Barcode数据--
ID Barcode CtrlNo
1 A0001 101
2 A0002 101
3 A0003 101
4 A0004 101


用查询语句:
select substring( CallNo , 1 ,2) as class,count(Barcode) as Total
from B_Barcode a , B_CallNo b
where a.CtrlNo = b.CtrlNo
group by substring( CallNo , 1 ,2)
order by Total desc

查询得结果:

class Total
---- -----
TP 8

我的结果是要得到4,请问该怎样写查询语句??因为表B_CallNo有重复的CtrlNo,导致查询的结果也有重复了。谢谢


------------以下是给大家的调试准备----------------

--表B_CallNo--
create table B_CallNo
(ID int primary key identity(1,1),
CtrlNo int,
CallNo varchar(50),
Lib int
)
insert into B_CallNo(CtrlNo, CallNo, Lib) values('101','TP393',1)
insert into B_CallNo(CtrlNo, CallNo, Lib) values('101','TP393',2)

--表B_Barcode--
create table B_Barcode
(ID int primary key identity(1,1),
Barcode varchar(50),
CtrlNo int
)
insert into B_Barcode(Bardcode , CtrlNo) values('A0001','101')
insert into B_Barcode(Bardcode , CtrlNo) values('A0002','101')
insert into B_Barcode(Bardcode , CtrlNo) values('A0003','101')
insert into B_Barcode(Bardcode , CtrlNo) values('A0004','101')


...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
guanlianan
Sybase 2,598 成员 25,608 内容