推广 热搜: page  使用  音视频  个数  选择  搜索引擎  企业  百度  可以  父亲 

可靠的合肥网站建设/网页设计收费标准

   日期:2024-12-21     作者:nzs5p    caijiyuan   评论:0    移动:http://ww.kub2b.com/mobile/news/9591.html
核心提示:sql用到现在,也算是基本入门了。本来想去借《sql必知必会》,杭图只有2本,而且永远在出借中。就只好借了O&#

sql用到现在,也算是基本入门了。

本来想去借《sql必知必会》,杭图只有2本,而且永远在出借中。

就只好借了O'REILLY的青蛙书instead。

拖了一个月都没看几页,因为染头发,用一个下午翻完了。

算是对sql做到了查漏补缺。

其实主要也就看了查询部分,操作部分反正也没有权限,索性都跳过了。

读完这本,sql学习就暂时告一段落啦~


下面罗列3个还蛮实用的查询小技巧。

书里给出的写法是

之前慎M也给过一段代码,写法更加简便,实测等效。

该语句可用于提取整月数据,比“arrive_time大于等于1号,小于等于31号”的写法简便。

工作中经常遇到分马甲提数的情况,多马甲的话肯定是首选group by。

但是上级还是会需要看到总数如何,仅仅group by不能解决问题,还得excel之后sum一次,太过麻烦。

with rollup就能很好地解决这个问题。

在group by后面加上“with rollup”,最后一行就是合计数。

不过with rollup在单一维度上聚合用处不算明显,在多个维度上聚合才能显现出优势。

03拼表的最优方法

把主from的表缩到足够小,留好主key,保证key的唯一性。

后续的表全都left join挂到主key上。

例如在做员工工作情况监督表时,把主from表缩成员工表,但凡是活跃员工,统统保留且唯一,把员工ID作为主key。

其他员工工作情况表全部以group by员工ID,然后left join挂到主key上。

目前不太能用到的其他知识点Other Points01关联子查询

读完这本书才看懂了慎M的这段代码,where里就是用到了关联子查询。

作用是为了取到某个订单最小的分配时间。

在这段语句中,每取一个order_id,就会遍历一次该订单的所有分配记录,直到找到最小的那个,再取下一个order_id。

目前我的工作中还没有需要用到关联子查询这么复杂语句的地方,不过可以先积累起来。

PS:EXISTS函数是配合关联子查询使用的。

在select前加explain,就不是按语句查询,而是会显示该段语句需要检索多少行数据。

需要检索的数据越少,代码运行越快。

这也是为什么最好把经常用于条件查询的字段做成索引。

(虽然我还不明白索引到底和普通字段到底有啥区别,反正记住更快就行了)

所以explain可以用于优化代码运行速度,只是目前我还不太需要用到。

在From前加“INTO OUTFILe + 路径”可以直接导出文件,例如

原本想用这个语句直接导出每天做表的源数据的,奈何账户权限不够,只好作罢。


下个阶段要去恶补一下数据透视表啦~~

本文地址:http://ww.kub2b.com/news/9591.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号