当前位置: 首页 > news >正文

打车网站开发pinthis wordpress

打车网站开发,pinthis wordpress,网站开发项目工期流程,网络销售是做什么在做一些比较复杂的DB数据导出时#xff0c;有时会要求“将不固定的多行数据组合成一个字符串返回”。例子#xff1a;ISV Portal中就遇到了类似的情况#xff0c;要求对于每一个APP#xff0c;返回其所属的所有类目名称#xff0c;类目名称之间用[,]隔开。本文就用此例子…在做一些比较复杂的DB数据导出时有时会要求“将不固定的多行数据组合成一个字符串返回”。例子ISV Portal中就遇到了类似的情况要求对于每一个APP返回其所属的所有类目名称类目名称之间用[,]隔开。本文就用此例子来介绍。在具体陈述实现方案之前我们先介绍下我们即将操作的表结构SQL desc app_category_link;Name Type Nullable Default CommentsAPP_CATEGORY_LINK_ID VARCHAR2(20) 主关键APP_ID VARCHAR2(20) 应用IDAPP_CATEGORY_ID VARCHAR2(20) 应用类别ID其中字段APP_ID和APP_CATEGORY_ID是一对多关系对于该类型的问题总结一下大致有如下几种常见方案方案1sys_connect_by_path start with 。。。 connect by 。。。 prior 分析函数从上面的这个公式中我们可以看出该方案主要是通过分析函数和父子级联查询来完成一般是一条SQL搞定比较省事。首先来看几个具体的实现SQL。具体实现1SELECT app_id,ltrim(max(sys_connect_by_path(app_category_id, ,)), ,) categ_idsFROM (SELECT app_id,app_category_id,app_category_id || | || rn rchild,app_category_id || | || (rn - 1) rfatherFROM (SELECT app_id,app_category_id,row_number() over(PARTITION BY app_id ORDER BY app_category_id) rnFROM app_category_link))START WITH rfather LIKE %|0CONNECT BY PRIOR rchild rfatherGROUP BY app_id;具体实现2select app_id,ltrim(max(sys_connect_by_path(app_category_id, ,)), ,) categ_idsfrom (select t。app_id,t。app_category_id,min(t。app_category_id) over(partition by app_id) categ_min,(row_number() over(order by app_id, app_category_id)) (dense_rank() over(order by app_id)) numidfrom app_category_link t)start with app_category_id categ_minconnect by numid - 1 prior numidgroup by app_id;具体实现3select app_id,ltrim(max(sys_connect_by_path(app_category_id, ,)), ,) categ_idsfrom (select t。app_id,t。app_category_id,(row_number()over(partition by app_id order by app_category_id)) numidfrom app_category_link t)start with numid 1connect by numid - 1 prior numidand app_id prior app_idgroup by app_id;具体实现4select app_id,ltrim(sys_connect_by_path(app_category_id, ,), ,) categ_idsfrom (select t。app_id,t。app_category_id,(row_number()over(partition by app_id order by app_category_id)) numidfrom app_category_link t)WHERE connect_by_isleaf 1start with numid 1connect by numid - 1 prior numidand app_id prior app_id;请注意看4种实现方式的区别下面分别介绍下这4种实现方式的具体思路第1种实现采用了1个分析函数、2次子查询、一个like、以及父子级联查询字段值连接可以猜测下性能肯定不咋的2次子查询本来已经很耗时了对查询出来的结果集还要用like匹配速度就更慢了此法可以查询到我们需要的具体数据但是效率很低不可取他的实现思路是利用待查询字段值与各APP下面各类目ID的序列值进行组合并作为父子关系级联的依据第2种实现采用了3个分析函数、1次全表扫描、以及父子级联字段值连接和第1种实现比较而言的话效率会高不少他的实现思路是利用各APP对应的最小类目ID作为父子级联的开始点而父子级联的依据是row_number()dense_rank()这样做主要是为了避免无限循环第3、4两种实现思路基本上是一样的都是1个分析函数、1次全表扫描、以及父子级联字段值连接从代码长度来说比前2种实现方式简洁了不少思路也清晰了很多直接利用各APP对应类目ID的序列值作为父子级联的开始点和连接依据但仔细看看两者的SQL会发现第3这种方式用到了group by子句而第4种实现却没有用到而是在where子句中添加了connect_by_isleaf 1 的查询条件从性能上来看应该是第4种实现方式更高但他只能在10g及其以后的版本中才能使用connect_by_isleaf 字段是10g中新提供的一个伪列他可以用来判断该条记录是否是树形记录的叶节点不过还在用9i版本的可能就有些可惜了综合以上分析对4种实现方案个人推荐使用第3、4两种实现方式具体哪种可以看所用oracle的版本而定简而言之这种实现方式优雅、简洁、高效。全部
http://www.pierceye.com/news/258595/

相关文章:

  • 网站架设标准网站域名注册费用
  • 东莞网站制作功能十堰微网站建设价格
  • google关键词分析工具网站建设seo 视频教程
  • 泸州市规划建设局网站网站建设及维护包括范围
  • 网站设计培训成都哪个网站开发软件
  • 四川炜航建筑公司网站新郑网络推广外包
  • 网站建设名头网站项目建设方案
  • 可以用asp做哪些网站简历模板大学生免费
  • 公司 宜宾网站建设头条小程序
  • 大连h5建站学院网站建设申请报告
  • 大蒜做营销型网站贵州最好的网站建设推广公司
  • 单仁资讯做网站怎样备案网站应用服务
  • 如何生成一个网站怎么查看一个网站有没有做推广
  • 温州网站设计案例wdcp创建多个网站
  • 做个公司网站专业做网站app的公司
  • 动漫网站源码下载莱芜金点子最新招工信息
  • 小区住宅可以注册公司吗简述seo的概念
  • 做农村电商要多少钱南宁软件优化网站
  • 网站系统建设技术服务费网站建设 专项资金变更
  • 网站建设画册怎么用eclipse做网页
  • 百度网站安全检测平台广州番禺营销型网站建设
  • 杭州大的做网站的公司甘肃省住房和城乡建设部网站首页
  • 网站建设与网页设计考试题棋牌软件开发搭建
  • 短链接生成网址wordpress主叶SEO优化
  • 免费的cms视频网站做cpa怎么建立自己网站
  • 在哪里找做网站的北京的招聘网站有哪些
  • 做旅行网站aspx网站开发
  • 网站接入服务器商查询wordpress更换端口
  • 网站网页设计师武义县网站建设
  • 中铁建设集团有限公司官网建站到网站收录到优化