导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

条件增加后返回的记录数反而多了,为什么呢?

jamespro 2003-12-08 10:40:42
SELECT count(schoolid) AS s1 ,sum(a7) as s2 ,sum(a8) as s3 ,sum(a11) as s4 ,sum(a12) as s5,sum(a16) as s6
FROM [TABLE A]
WHERE a9<>'' and a9 is not null
语句结束后返回1226条


SELECT count([TABLE A].schoolid) AS s1 ,sum(a7) as s2 ,sum(a8) as s3 ,sum(a11) as s4 ,sum(a12) as s5,sum(a16) as s6
FROM [TABLE A],[TABLE B]
WHERE [TABLE B].schooltype like 'D%'
and [TABLE A].a9<>''
and [TABLE A].a9 is not null
and [TABLE B].schoolsys=[TABLE A].schoolid
语句结束后返回1239条

请问多出来13条是怎么回事?
...全文
45 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cht99 2003-12-08
你的tableB中的schoolsys和tableA中的schoolid不是一对一的关系,tableB中的schoolsys字段应该有重复数据吧?
回复
victorycyz 2003-12-08
tableB中有重复的学校。
回复
Rotaxe 2003-12-08
因为你用了两表联接,记录多是正常的
回复
wzh1215 2003-12-08
第二个语句跟第一个不一样,第二个你用了联合查询,两个表数据联合查询比单表查询的数据多很正常也!
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告