首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

怎么进行这样的系谱查询

2012-09-09 
如何进行这样的系谱查询表 table1名称 父亲 母亲AFMFFFFMMMFMMFFFFF FFMFMFMF FMMMFMFF MFMMMMMF MMM要求

如何进行这样的系谱查询
表 table1
名称 父亲 母亲
A F M
F FF FM
M MF MM
FF FFF FFM
FM FMF FMM
MF MFF MFM
MM MMF MMM

要求得到
名称 父 母 父父 父母 母父 母母 父父父 父父母 父母父 父母母 母父父 母父母 母母父 母母母
A F M FF FM MF MM FFF FFM FMF FMM MFF MFM MMF MMM
F FF FM FFF FFM FMF FMM 
M MF MM MFF MFM MMF MMM
FF FFF FFM
FM FMF FMM
MF MFF MFF
MM MMF MMM

只查三代以内数据


 

[解决办法]

SQL code
SELECT A.名称,A.父亲,A.母亲,F.父亲 AS 父父,F.母亲 AS 父母,M.父亲 AS 母父,M.母亲 AS 母父,FF.父亲 AS 父父父,FF.母亲 AS 父父母,FM.父亲 AS 父母父,FM.母亲 AS 父母母,MF.父亲 AS 母父父,MF.母亲 AS 母父母,MM.父亲 AS 母母父,MM.母亲 AS 母母母FROM TABLE1 ALEFT JOIN TABLE1 F ON A.父亲 = F.名称LEFT JOIN TABLE1 M ON A.母亲 = M.名称LEFT JOIN TABLE1 FF ON F.父亲 = FF.名称LEFT JOIN TABLE1 FM ON F.母亲 = FM.名称LEFT JOIN TABLE1 MF ON M.父亲 = MF.名称LEFT JOIN TABLE1 MM ON M.母亲 = MM.名称 

热点排行