用实例理解自链接

两种状况:.net

一、根据条件自链接设计

二、无条件自链接 就是交叉链接,返回被链接的两个表全部数据行的笛卡尔积。3d

主要是第一种:blog

设计一张表:t_a博客

根据a的值自链接  语句:SELECT * FROM "t_a" ta,t_a tb where ta.a=tb.aim

本来我因为没有考虑到有些a列里能够有重复值,所以觉得数据行数和t_a表的行数相同。如如下这种状况:d3

①a列里没有重复值:数据

结果:db

②a列里有重复值img

结果:共41条记录,太长,不全贴出来了。

 

6*6+2*2+1*1=41

 

同理能够推出按照多个条件自链接的结果

如SELECT * FROM "t_a" ta,t_a tb where ta.a=tb.a and ta.b=tb.b的状况。这里状况应是9条,由于没有ab都是相同值的状况

如果存在ab相同时好比表中数据以下

 

,会出现3*3+2*2+4=17条结果

同时自链接的做用能够参考别人的博客:https://blog.csdn.net/weiwanampdaixu/article/details/78292053

相关文章
相关标签/搜索