01         服装        
0101       男装        
010101     西装        
010102     休闲装       
0102       女装        
010201     套装        
010202     职业装       
010203     休闲装       
0103       童装        
02         电器        
0201       进口        
0202       国产        
03         日用品       
写一个表值函数,显示所有叶结点,应该如何实现

解决方案 »

  1.   

    SELECT * FROM item_tb t1
    where not exists ( select itemcode from item_tb t2 
                       where t1.itemcode<>t2.itemcode and substring(t2.itemcode,1,len(t1.itemcode))=t1.itemcode)
    and t1.item_tb='你要输入的itemcode参数';
      

  2.   

    -- 查看所有的叶子节点
    SELECT * FROM item_tb t1
    where not exists ( select itemcode from item_tb t2 
                       where t1.itemcode<>t2.itemcode and substring(t2.itemcode,1,len(t1.itemcode))=t1.itemcode);
    --------------------------------------------------------------------------------------------------------------
    01 服装
    0101 男装
    010101 西装
    010102 休闲装
    0102 女装
    010201 套装
    010202 职业装
    010203 童装
    02 电器
    0201 进口
    0202 国产
    03 日用品
      

  3.   

    -- 查看所有的叶子节点
    SELECT * FROM item_tb t1
    where not exists ( select itemcode from item_tb t2 
                       where t1.itemcode<>t2.itemcode and substring(t2.itemcode,1,len(t1.itemcode))=t1.itemcode);
    --------------------------------------------------------------------------------------------------------------
    010101 西装
    010102 休闲装
    010201 套装
    010202 职业装
    010203 童装
    0201 进口
    0202 国产
    03 日用品
      

  4.   

    drop table item_tb;create table item_tb(
    itemcode VARCHAR(16),
    itemName VARCHAR(20) );INSERT INTO item_tb(itemcode, itemname) values('01','服装');
    INSERT INTO item_tb(itemcode, itemname) values('0101','男装');
    INSERT INTO item_tb(itemcode, itemname) values('010101','西装');
    INSERT INTO item_tb(itemcode, itemname) values('010102','休闲装');
    INSERT INTO item_tb(itemcode, itemname) values('0102','女装');
    INSERT INTO item_tb(itemcode, itemname) values('010201','套装');
    INSERT INTO item_tb(itemcode, itemname) values('010202','职业装');
    INSERT INTO item_tb(itemcode, itemname) values('010203','童装');
    INSERT INTO item_tb(itemcode, itemname) values('02','电器');
    INSERT INTO item_tb(itemcode, itemname) values('0201','进口');
    INSERT INTO item_tb(itemcode, itemname) values('0202','国产');
    INSERT INTO item_tb(itemcode, itemname) values('03','日用品');-- 查看所有的叶子节点
    SELECT * FROM item_tb t1
    where not exists ( select itemcode from item_tb t2 
                       where t1.itemcode<>t2.itemcode and substring(t2.itemcode,1,len(t1.itemcode))=t1.itemcode);
    --------------------------------------------------------------------------------------------------------------
    010101 西装
    010102 休闲装
    010201 套装
    010202 职业装
    010203 童装
    0201 进口
    0202 国产
    03 日用品