表一 a 表二 b 表三  c
id name id name   a_id id name b_id
1 食品 1 肉类 1 1 熟食类 1
2 日用品 2 蔬菜 1 2 生肉类 1
3 洗涤用品 2 3 洗脸的 2
4 洗头的 2

表四  d 最后得出这样的树 数量
id name c_id num -食品
1 羊肉 2 100 -肉类
2 牛肉 2 40 熟食类
3 精品羊肉 2 50 -生肉类 得出和190
4 飘揉 5 10 羊肉 100
5 力士 5 20 牛肉 40
6 精品羊肉 50
蔬菜
-日用品
-洗涤用品
洗脸的
-洗头的 30

解决方案 »

  1.   

    怎么做简单,效率高一些呢?数据库用ACCESS, 哪位大虾帮忙写个递归  实现上面的功能啊
    万分感激
      

  2.   

    好象就是这么做,2组id,小类也可以和大类放在一起,查的时候会快一点,但不是很好,违反了三大范式.通过第一组id 然后小类的id也可以是大类的id ,让他们id相同另外一组id是控制大类的primarykey
      

  3.   

    spiniper() 
    说的不错
    有钱才做
    没钱不做
    哈哈
    现在的人啊
    都这样的现实
      

  4.   

    很简单啊。如果是存储在表中,那么直接select所有记录不就等于是遍历了吗?
      

  5.   

    使用一张表,table_tree
    进行分类
    menID  0
    name   食品
    paMen  -1create table table_tree(
    menID varchar(10) primary key not null,
    name  varchar(20) null,
    paMen varchar(10) null
    )
    insert into table_tree values('0','tree','-1')
    insert into table_tree values('01','食品','0');
    insert into table_tree values('02','日用品','0');
    insert into table_tree values('03','洗涤用品','0');
    insert into table_tree values('04','洗头的','0');
    insert into table_tree values('0101','肉类','01')
    insert into table_tree values('0201','蔬菜','02')
    insert into table_tree values('0301','洗脸的','02')
    insert into table_tree values('0401','飘柔','02')建mentree类
    查询出每个大类下每个子类.
    public String[][] 
    以数组方式显示而返回
    在去实现tree