文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>oracle SQL

oracle SQL

时间:2010-06-23  来源:xylonw

业务需求:     查询,指定分类(包含子分类)下的所有不重复的内容(一条内容可能属于多个子分类)   表结构:   分类表 T_INFO_CLASS
名称 类型 可为空 默认 注释
ID NUMBER      主键id
NAME VARCHAR2(64) Y    名称
PARENT_ID NUMBER Y    父类id
DESCRIPTION VARCHAR2(200) Y    描述
SPELL VARCHAR2(10) Y    缩写
  中间表 t_info_class_relationship
名称 类型 可为空 默认 存储 注释
ID NUMBER(19) N      主键id
INFO_ID NUMBER(19) Y      内容id
CLASS_ID NUMBER(19) Y      分类id
  内容表t_info
名称 类型 可为空 默认 存储 注释
ID NUMBER(19) N      主键id
TITLE VARCHAR2(255 CHAR) Y      标题
  SQL :  

select count(*) from t_info t, t_info_class_relationship s 
    /* 限制属于同一个分类下只显示一条记录*/
where t.id in (select min(info_id) from t_info_class_relationship group by info_id having count(*) > 0)
    /* 递归查询同一个分类下的所有子分类*/
and s.class_id in(select a.id from T_INFO_CLASS a start with a.parent_id=39902 connect by prior a.id =parent_id union select 39902 from dual) order by t.id DESC

 

注: 性能比较低,不知道该如何优化。。。。。。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载