两种状况:.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