首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我想要一个简单的查询来解决这个问题。我们有一个简单的表,其中包含用于合并客户端数据的from和to

我想要一个简单的查询来解决这个问题。我们有一个简单的表,其中包含用于合并客户端数据的from和to
EN

Stack Overflow用户
提问于 2019-09-07 05:47:32
回答 1查看 61关注 0票数 0

我想要一个简单的查询来解决这个问题。

我们有一个包含4列的简单表,用于合并客户端数据。我们必须创建一个循环来遍历数据,直到在FromClient行中找不到ToClient。我们有一个人已经被合并了5次。

代码语言:javascript
复制
FromClient# ToClient#   Userid  Timestamp
1       2       
2       3       
3       4
4       5       
5       6       
7       8       

我想要的是创建一个如下所示的表,因此它是一个简单的报表连接。

代码语言:javascript
复制
FromClient# ToClient#
1       6
2       6
3       6
4       6   
5       6
7       8

任何指针都会很棒。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-09-07 15:26:26

尝试使用递归公用表表达式(RCTE):

代码语言:javascript
复制
with 
  mytab (FromClient#, ToClient#) as 
(
values
  (1, 2)
, (2, 3)
, (3, 4)
, (4, 5)
, (5, 6)
, (7, 8)
)
, t (FromClient#, ToClient#) as 
(
select FromClient#, ToClient#
from mytab a
where not exists (select 1 from mytab b where b.FromClient# = a.ToClient#)
  union all
select a.FromClient#, t.ToClient#
from t, mytab a
where a.ToClient# = t.FromClient#
)
select * 
from t
order by FromClient#;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57828870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档