当前在线人数11497
首页 - 分类讨论区 - 电脑网络 - 数据库版 -阅读文章
未名交友
[更多]
[更多]
文章阅读:有关论文引用的SQL
[同主题阅读] [版面: 数据库] [作者:didadida] , 2018年07月07日11:06:00
didadida
进入未名形象秀
我的博客
[上篇] [下篇] [同主题上篇] [同主题下篇]

发信人: didadida (滴滴嗒嗒), 信区: Database
标  题: 有关论文引用的SQL
发信站: BBS 未名空间站 (Sat Jul  7 11:06:00 2018, 美东)

...
论文10引用了论文 2
论文11引用了论文 1,2,10

等等
假设10之前的文章没有引用别的 ...
每个论文引用多个以前的论文,也可能被多个以后的论文引用

数据表

论文  引用了
10    2
11    1
11    2
11    10
....

现在要求得到加工后的是这样,比如对论文11,原始引用了3个论文(1,2,10),但
是10引
用了2,所以只保留 1,10.就是说如果论文A引用了论文C,也引用了B,如果B引用了C
,那么只保留论文A对B的引用,引文从C到A并不仅仅是直接的路径。或者(不科学地)
说孙子有其爸爸的Y染色体,也有其爷爷的Y染色体,结果集只保留孙子对其爸爸(跟论
文引用论文不完全吻合,因为不是多对多,是树,不是论文的网络)

SQL结果的数据是
论文 引用了

10   2
11   1
11  10



编程的话,可以把整个表看成图,遍历每个记录,比如   11 引用 2  (2-->11),可
以变换方向(11-->2),那么就形成了回路(11-->2-->10-->11),这个记录就加“删除”
tag。形不成回路,说明是'直接'的引用。

问题:如何用SQL形成结果集?


--
※ 修改:·didadida 於 Jul  7 11:10:41 2018 修改本文·[FROM: 71.]
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 71.]

[上篇] [下篇] [同主题上篇] [同主题下篇]
[转寄] [转贴] [回信给作者] [修改文章] [删除文章] [同主题阅读] [从此处展开] [返回版面] [快速返回] [收藏] [举报]
 
回复文章
标题:
内 容:

未名交友
将您的链接放在这儿

友情链接


 

Site Map - Contact Us - Terms and Conditions - Privacy Policy

版权所有,未名空间(mitbbs.com),since 1996