表AAA有三个字段分别为:A(id) B(父id) C(内容) 默认记录如下: 
1 0 A
2 0 B
3 1 C
4 3 D
5 4 E
6 0 F
7 0 G
8 5 H
...请教想实现这种列表如何写SQL...
A
C
D
E
H
...

解决方案 »

  1.   

    select a.内容 
    from AAA a inner join (
    select 父id,min(id) as mid
    from AAA
    group by 父id
    ) b on a.id=b.min
      

  2.   

    select a.内容
    from AAA a 
    where not exists (select id from AAA where 父id=a.父id and id<a.id)
      

  3.   

    这种递归一般用VBA来实现,如果就你上述的数据
    select a.c from tth3 a inner join ( select b,min(a) as min from tth3 group by b) b on a.a=b.min
      

  4.   

    要看你MySQL 版本是多少【主要是是否支持子查询】;若版本低实现起来SQL就麻烦多了。