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

网站做百度竞价装饰工程施工进度计划表

网站做百度竞价,装饰工程施工进度计划表,软件开发工具的重要性,番禺网站推广问题描述 为使讨论简单易懂#xff0c;我将问题稍作简化#xff0c;去掉诸多的背景。 从前有一个皇帝#xff0c;他有50个妃子#xff0c;这些妃子很没有天理的给他生了100,000个儿子#xff0c;于是#xff0c;皇帝很苦恼#xff0c;海量的儿子很难管理#xff0c;而且…问题描述 为使讨论简单易懂我将问题稍作简化去掉诸多的背景。 从前有一个皇帝他有50个妃子这些妃子很没有天理的给他生了100,000个儿子于是皇帝很苦恼海量的儿子很难管理而且他想知道每个妃子给他生了多少个儿子从而论功行赏这很难办。问题描述为使讨论简单易懂我将问题稍作简化去掉诸多的背景。从前有一个皇帝他有50个妃子这些妃子很没有天理的给他生了100,000个儿子于是皇帝很苦恼海量的儿子很难管理而且他想知道每个妃子给他生了多少个儿子从而论功行赏这很难办。于是皇帝请了一个程序员帮他编了一个程序用数据库来存储所有的儿子的信息这样就可以用程序来统计和管理啦。数据库的结构如下id皇子的唯一编号mother皇子母亲的唯一编号皇帝把妃子分成了两个等级天宫娘娘(编号小于25)和地宫娘娘(编号大于等于25)他想知道天宫娘娘们和地宫娘娘们的生育能力孰强孰弱。于是程序员开始写SQL Query了。方法1使用GROUP BYSQL QuerySELECTCOUNT(*)FROMprinceGROUPBYmother24;执行结果count(*)5002949971在100,000行数据上的运行时间0.0335 秒分析这种GROUP BY方法的最大问题在于无法区分所得到的结果。这两个数字哪一个是天宫娘娘们所生的皇子数哪一个是地宫娘娘们所生的皇子数呢不知道。所以尽管它统计出了总数但是没有什么意义。因此为了区分统计结果必须要把条件 mother 24 也作为一个字段在结果集中作为一个字段体现出来修改后的sql如下SELECTCOUNT(*)ASnumber,mother24AStypeFROMprinceGROUPBYmother24;执行结果number type50029 049971 1条件表达式作为字段时该字段的值就是该条件表达式的值因此对应我们的例子type 1 也就是表示 mother 24 的值为1因此第二行中的数字代表地宫娘娘们所生的皇子数。经过修改后我们看出天宫娘娘们略胜一筹。优缺点缺点是显而易见的由于使用了条件表达式作为分组依据它只能做二元的划分对于要分成多类进行统计的情况不能够胜任。比如要分别统计1~10号、11~24号25号~50号妃子的产子数就无法实现了。另外由于使用了GROUP BY因此涉及到排序执行时间上要更长。我暂时没有发现这种方法的优点。方法2使用嵌套的SELECT使用嵌套的SELECT也可以达到目的在每个SELECT子句中统计一个条件下的数据然后用一个主SELECT把这些统计数据整合起来。SQL QuerySELECT(SELECTCOUNT(*)FROMprinceWHEREmother24)ASdigong,(SELECTCOUNT(*)FROMprinceWHEREmother24)AStiangong执行结果digong tiangong49971 50029在100,000行数据上的运行时间0.0216 秒分析这种嵌套SELECT的方法非常直观就是分别统计各个条件下的数值最后进行汇总通俗易懂跟自然语言没啥区别了。优缺点优点就是直观而且速度也比GROUP BY要快。虽然是3条SELECT语句看起来比GROUP BY的方案多了2条语句但是它不涉及到排序这就节省了很多时间。缺点可能就是语句稍多对语句数量有洁癖的同学可能会比较不舒服。方法3使用CASE WHENCASE WHEN语句的功能很强大可以定义灵活的查询条件很适合进行分类统计。SQL QuerySELECTCOUNT(CASEWHENmother24THEN1ELSENULLEND)ASdigong,COUNT(CASEWHENmother24THEN1ELSENULLEND)AStiangongFROMprince执行结果digong tiangong49971 50029在100,000行数据上的运行时间0.02365825 秒分析此方法的关键在于COUNT(CASEWHENmother24THEN1ELSENULLEND)这里的COUNT和CASE WHEN联合使用做到了分类计数。先使用CASE WHEN当满足条件时将字段值设置为 1 不满足条件时将字段值设置为NULL接着COUNT函数仅对非NULL字段进行计数于是问题解决。优缺点优点嘛此方法也不涉及到排序因此运行时间上与方法2相当SELECT语句减少到了 1 条。缺点就是语句比较长对语句长度有洁癖的同学可能会比较不舒服。总结对于确定分类的按条件计数可以尽量不用GROUP BY从而避免排序动作加速Query的执行。如果需要根据某个字段的值进行分类而该字段的值是可变的比如皇帝要统计每一个妃子的产子数而他可能不停的再娶很多妃子这种情况下使用方法2和方法3就不太灵光了还是使用一个GROUP BY来得简单便捷。本文原创发布php中文网转载请注明出处感谢您的尊重
http://www.huolong8.cn/news/54984/

相关文章:

  • 广宁网站建设公司专业手机网站建设多少钱
  • 建设网站的功能及目的是什么意思网站内文章外链如何做
  • 学校网站 建设wordpress xml插件下载
  • 邢台做网站建设优化制作公司做视频网站多少钱
  • 网站空间支持功能qq选号网站怎么做的
  • 电脑建立网站visio网站开发流程图
  • 做h5页面的网站有哪些页游开服表
  • 上海网站建设,迈中山市建设工程网上办事系统
  • 手机seo排名怎么做网站排名优化免费
  • 自己开发网站怎么开发液压电机东莞网站建设
  • 效果营销型网站建设wordpress站点标题副标题换行
  • 漫画网站模板网站推广的方法搜索引擎
  • 西安网站建设云阔网络开拓网站建设
  • 网站营售淘宝内部券网站建设
  • 浙江网站建设设计斗蟋蟀网站建设
  • wordpress程序建站有没有帮忙做标书的网站
  • 重庆要做网站推广一品楼
  • 企业网站文案外包网站开发职责
  • 台州专业做网站手机网站建站用哪个软件好
  • 舆情监控都有哪些内容上海关键词排名优化公司
  • 成品网站w灬源码在线看宁波免费网页制作模板
  • 国内谷歌网站SEO优化网站地图导出怎么做
  • 怎么做淘宝网站教程如何通过域名访问网站
  • 如何通过网站后台修改网站做百度收录比较好的网站
  • 医院网站asp手机网页传奇
  • 舟山网站建设代理电商设计英语
  • 天津市免费建站网站建设好后如何提交搜索引擎
  • 中国建设银行注册网站用户名怎么填自建网站支付问题
  • 宁晋网站建设公司网络运维工程师简历范文
  • 韩国美食网站建设目的新网网站空间