表名:家庭表
家庭地址 户主姓名 姓名
234号 徐志明 徐志明
234号 徐志明 陈隆福
234号 徐志明 张泉林
235号 李尧根 李尧根
235号 李尧根 吴阿大
235号 李尧根 李关金怎么样的sql,才能写成:家庭地址 户主姓名 姓名 家庭人数 家庭成员
234号 徐志明 徐志明 3 徐志明,徐隆福,徐泉林
234号 徐志明 徐隆福 3 徐志明,徐隆福,徐泉林
234号 徐志明 徐泉林 3 徐志明,徐隆福,徐泉林
235号 李尧根 李尧根 2 李尧根,李阿大
235号 李尧根 李阿大 2 李尧根,李阿大
家庭地址 户主姓名 姓名
234号 徐志明 徐志明
234号 徐志明 陈隆福
234号 徐志明 张泉林
235号 李尧根 李尧根
235号 李尧根 吴阿大
235号 李尧根 李关金怎么样的sql,才能写成:家庭地址 户主姓名 姓名 家庭人数 家庭成员
234号 徐志明 徐志明 3 徐志明,徐隆福,徐泉林
234号 徐志明 徐隆福 3 徐志明,徐隆福,徐泉林
234号 徐志明 徐泉林 3 徐志明,徐隆福,徐泉林
235号 李尧根 李尧根 2 李尧根,李阿大
235号 李尧根 李阿大 2 李尧根,李阿大
解决方案 »
- Sql Server 2005
- SQL Server已为8个并发查询而优化。15 个查询超过了此限制...
- 送100分,客户端软件不安装mssql2000,需要mssql2000那些文件?要写注册表吗?
- 这个东东好久没有用了,忘记了,各位帮帮忙,谢谢!
- 有一表与表关联问题求教
- 谁能给我举个RAISEERROR的例子,并且说明每句话什么意思
- 执行.sql文件的简单问题
- 有没有人知道,证券行业的数据库是什么的。
- 我问一个深一点的问题,关于数据库的。。。
- sql数据库可以承受的数据量是多少?
- SQL SERVER 2000和 windows server 2003 连接的问题????
- 三个表,一对多表查询问题。。
returns varchar(200)
as
begin
declare @s varchar(200)
select @s = isnull(@s+','+'') + 姓名 from 家庭表 where 家庭地址 = @dz
return @s
end
goselect *,dbo.f_str(家庭地址)
from 家庭表
returns varchar(200)
as
begin
declare @s varchar(200)
select @s = isnull(@s+','+'') + 姓名 from 家庭表 where 家庭地址 = @dz
return @s
end
goselect *,
家庭人数 = (select count(1) from 家庭表 where 家庭地址 = a.家庭地址),
dbo.f_str(家庭地址)
from 家庭表 a
if object_id('tempdb.dbo.#T') is not null drop table #T
create table #T (家庭地址 varchar(5),户主姓名 varchar(6),姓名 varchar(6))
insert into #T
select '234号','徐志明','徐志明' union all
select '234号','徐志明','陈隆福' union all
select '234号','徐志明','张泉林' union all
select '235号','李尧根','李尧根' union all
select '235号','李尧根','吴阿大' union all
select '235号','李尧根','李关金'select 家庭地址,户主姓名, 姓名=(stuff((select ','+姓名 from #T where 家庭地址=a.家庭地址 and 户主姓名=a.户主姓名 for xml path('')),1,1,'')) from #T a/*
家庭地址 户主姓名 姓名
----- -------- ------------------------
234号 徐志明 徐志明,陈隆福,张泉林
234号 徐志明 徐志明,陈隆福,张泉林
234号 徐志明 徐志明,陈隆福,张泉林
235号 李尧根 李尧根,吴阿大,李关金
235号 李尧根 李尧根,吴阿大,李关金
235号 李尧根 李尧根,吴阿大,李关金
*/