比如有科目如下
每层科目长度:kmlen(0-6)共7层[3-2-2-2-2-2-2]
第一层科目长度为kmlen(0), 第二层科目长度为kmlen(1),依此类推
表名:kmtable
id    name    
521   xxx
52101   xxx
52102   xxx
5210301   xxx
521020102   xxx
521010301   xxx
52104   xxx
可以看出52103、5210201、5210103科目不存在
如何用编程sql语句实现

解决方案 »

  1.   

    kmtable表中查找 Left(编码,kmlen(i))
      

  2.   

    select left(id,3),name from kmtable where len(id)=5 and (left(id,3) not in (select id from kmtable))
    union all
    select left(id,5),name from kmtable where len(id)=7 and (left(id,5) not in (select id from kmtable))
    ....
      

  3.   

    To:loveailon(阿伦) 
       你这样说就更不对了, 只要别人不能更改表的结构,无论怎么改数据,都应该不能出现关联错误才对。
       所以说, 还是你的结构设计有问题。