sql 一组记录上的服务器函数
sql server function on a group of records
我有一组查询。有没有办法访问纯 T-SQL 2005 中每个组的组内所有记录?
我想实现的目标是,假设我有一个 table Table(A, B) 和一个 group by A 查询。然后我需要得到一个连接列表,每个连接都是一个组内 B 的值的连接。有什么想法吗?
你可以这样做:
create table T(a char(1), b char(1))
insert into T values ('a','b'),('a','c'),('a','d'),('e','f'),('e','g');
select distinct a
,concat_b = (select b from T t2 where t2.a=t1.a for xml path(''))
from T t1
列 "concat_b" 将包含 XML 字符串,如“<b>b</b><b>c</b><b>d</b>
”,然后您可以将 XML 标记替换为您想要的分隔符。
我有一组查询。有没有办法访问纯 T-SQL 2005 中每个组的组内所有记录?
我想实现的目标是,假设我有一个 table Table(A, B) 和一个 group by A 查询。然后我需要得到一个连接列表,每个连接都是一个组内 B 的值的连接。有什么想法吗?
你可以这样做:
create table T(a char(1), b char(1))
insert into T values ('a','b'),('a','c'),('a','d'),('e','f'),('e','g');
select distinct a
,concat_b = (select b from T t2 where t2.a=t1.a for xml path(''))
from T t1
列 "concat_b" 将包含 XML 字符串,如“<b>b</b><b>c</b><b>d</b>
”,然后您可以将 XML 标记替换为您想要的分隔符。