过关斩将,我最后输在sql的书写和执行顺序上,细节决定成败啊
有的时候就是这样,我们大众普遍接受的,可能最后发现是错的,就像陈思成的那个电影说的,我们曾经认为根本没有的,后来发现;它确确实实存在。有一些我们深信不疑的,后来却明白;根本就没有。
比方说我今天要讲的这个哭笑不得的例子,虽然最后也拿到了offer,但是,这个真的是给我问懵了,来看一下怎么回事吧
1. 书写顺序
按以下的顺序书写sql语句
SELECT 查询列表.
FROM 表 1
【连接类型】 JOIN 表2
ON 连接条件
WHERE 筛选条件
GROUP BY 分组列表
HAVING 分组后的筛选条件
ORDER BY 排序的字段
LIMIT 起始的条目索引,条目数;
即:
SELECT →FROM → JOIN → ON → WHERE → GROUP BY → HAVING → ORDER BY→ LIMIT
注意:
① 连接类型有:inner、left outer、right outer、cross
② 起始条目索引默认从0开始;
③ 若 每页显示条目数:pageSize,要显示的页数:page
则有:
SELECT * FROM 表 LIMIT (page-1)* pageSize,pageSize
2. 执行顺序
按右边标出的 ①-⑨ 的顺序执行
SELECT 查询列表 ⑦
FROM 表 1 ①
【连接类型】 JOIN 表 2 ②
ON 连接条件 ③
WHERE 筛选条件 ④
GROUP BY 分组列表 ⑤
HAVING 分组后的筛选条件 ⑥
ORDER BY 排序的字段 ⑧
LIMIT 起始的条目索引,条目数; ⑨
即:
FROM → JOIN → ON → WHERE → GROUP BY → HAVING → SELECT → ORDER BY→ LIMIT
————————————————
精彩展现
上面这一些,真的是基础中的基础,甚至都不能算得上是什么技术,只不过,现在对于程序猿的要求有点高,所以我们在面试的时候会考虑一下程序员的编码规范,毕竟谁也不想招聘一个代码除了他之外谁也看不懂的吧,那重构的时候不要了老命了啊
而这一些,作为中国互联网大佬--阿里,已经给你考虑到了,结合实际的业务需求,他们整理了两套开发手册,一套数据库(Oracle、MySQL),一套Java开发手册,现在也被一些公司作为自己的开发规范使用,这里也分享给大家
数据库开发规范
分为oracle和mysql两部分,也是现在市面上开发行业应用最广泛的两款数据库
需要这份设计规范的,关注+转发,私信“资料”即可查看获取方式
oracle
mysql
Java开发手册
关注公众号:Java架构师联盟,后台回复mysql。精美文档相待哦