求一关联查询的SQL语句

zhongzuo1981 2007-09-04 03:10:13
家庭表familyInfo
id,regionCode
1,1000

人员表familyPerson
id,familyInfoId,sex
1,1,0
2,1,1

一对多关系,familyInfoId关联。

要统计某一区域内的
区域,家庭数,男人数,女人数
1000,1,1,1

用外联的话会出来两条,我只要一条记录,语句该怎么写啊?
谢谢!!!
...全文
99 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhongzuo1981 2007-09-04
  • 打赏
  • 举报
回复
你说的方法可以啊,谢谢了!
dawugui 2007-09-04
  • 打赏
  • 举报
回复
你的家庭数统计有问题.按目前的结构好象不能统计.
dawugui 2007-09-04
  • 打赏
  • 举报
回复
create table familyInfo(id int,regionCode int)
insert into familyInfo values(1,1000)
go
create table familyPerson(id int,familyInfoId int,sex int)
insert into familyPerson values(1,1,0)
insert into familyPerson values(2,1,1)
go

select a.regionCode 区域,b.男人数 , b.女人数 from familyInfo a,
(
select familyInfoId,
sum(case when sex = 0 then 1 else 0 end) '男人数',
sum(case when sex = 1 then 1 else 0 end) '女人数'
from familyPerson
group by familyInfoId
) b
where a.id = b.familyInfoId
drop table familyInfo,familyPerson

/*
区域 男人数 女人数
----------- ----------- -----------
1000 1 1

(所影响的行数为 1 行)
*/
star_ais 2007-09-04
  • 打赏
  • 举报
回复
select distinct ......
在检索之前使用关键字distinct,这样就可以只检索出一条数据。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧