现在有两张表商品表商品ID 商品名称 商品类ID
1 宇宙 1
2 女孩 3-----------------------------------------
类表类ID 大类 大类名称 小类名称
1 宇宙
3 4 人 女人
------------------------------------------------
表结构是这样的。比较复杂。 类ID和商品类ID是关联的。但是类ID里有可能是大类ID。有可能是小类ID。所以比比较乱不知道该怎么查询大类对应多个小类。小类对应多个商品。但是有的类地下没有小类。直接是商品。那这个类就属于大类。现在我要分组大类。然后查出大类下的小类。在查出小类下的商品。
请问用sql怎么实现。
相当于一个树。一个节点下没有子节点了。但他也按节点显示- -!不知道改怎么分组查
1 宇宙 1
2 女孩 3-----------------------------------------
类表类ID 大类 大类名称 小类名称
1 宇宙
3 4 人 女人
------------------------------------------------
表结构是这样的。比较复杂。 类ID和商品类ID是关联的。但是类ID里有可能是大类ID。有可能是小类ID。所以比比较乱不知道该怎么查询大类对应多个小类。小类对应多个商品。但是有的类地下没有小类。直接是商品。那这个类就属于大类。现在我要分组大类。然后查出大类下的小类。在查出小类下的商品。
请问用sql怎么实现。
相当于一个树。一个节点下没有子节点了。但他也按节点显示- -!不知道改怎么分组查
1 宇宙 1
2 女孩 3 -----------------------------------------
类表 类ID 大类 大类名称 小类名称
1 宇宙
3 4 人 女人
------------------------------------------------主要是查询类表关于商品表最后只要inner join 商品表 on 类id=商品id就行了那么关于查询类表 首先查询大类
1.select distinct 类id from 类表 wher 大类 is null 别名 “大类表”
2.select × from 类表 group by 大类表
3.inner join 商品表 on 类id=商品id
from 商品表 p,类表 c
where p.商品类ID=c.类ID