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

企业站模板网页设计英语怎么说

企业站模板,网页设计英语怎么说,厦门百度整站优化服务,广州做网站价格一、SELECT查询的完整结构 1.1 方式一(SQL 92语法) SELECT ..., ..., ... FROM ..., ..., ... WHERE 多表的连接条件 AND 不包含组函数的过滤条件 GROUP BY ..., ... HAVING 包含组函数的过滤条件 ORDER BY ... ASC/DESC LIMIT ..., ... 1.2 方式二&a…

一、SELECT查询的完整结构

1.1 方式一(SQL 92语法)

SELECT ..., ..., ...
FROM ..., ..., ...
WHERE 多表的连接条件
AND 不包含组函数的过滤条件
GROUP BY ..., ...
HAVING 包含组函数的过滤条件
ORDER BY ... ASC/DESC
LIMIT ..., ...

1.2 方式二(SQL 99语法)

SELECT ..., ..., ...
FROM ... JOIN ...
ON 多表的连接条件
JOIN ...
ON ...
WHERE 不包含组函数的过滤条件
AND/OR 不包含组函数的过滤条件
GROUP BY ..., ...
HAVING 包含组函数的过滤条件
ORDER BY ... ASC/DESC
LIMIT ..., ...

1.3 关键字解释

  • from:从哪些表中筛选
  • on:关联多表查询时,去除笛卡尔积
  • where:从表中筛选的条件
  • group by:分组依据
  • having:在统计结果中再次筛选
  • order by:排序
  • limit:分页

二、SELECT 执行顺序

你需要记住SELECT查询时的两个顺序:

2.1 关键字的顺序是不能颠倒的

SELECT ... 
FROM ... 
WHERE ... 
GROUP BY ... 
HAVING ... 
ORDER BY ... 
LIMIT...

2.2 SELECT 语句的执行顺序

在MySQL和Oracle中,SELECT执行顺序基本相同

FROM ..., [(LEFT/RIGHT) JOIN ..., ON ...]

WHERE

GROUP BY

HAVING

SELECT

DISTINCT #去重操作

ORDER BY ..., ..., (ASC/DESC)

LIMIT ..., ...

2.3 SQL 的执行原理

        SELECT 结构中是先执行 FROM 这一步的,称为“FROM阶段”。在这个阶段,如果是多张表联查,还会经历下面的几个步骤:

1. 首先先通过 CROSS JOIN 求笛卡尔积,相当于得到虚拟表 vt(virtual table)1-1;

2. 通过 ON 进行筛选,在虚拟表 vt1-1 的基础上进行筛选,得到虚拟表 vt1-2;

3. 添加外部行。如果我们使用的是左连接、右链接或者全连接,就会涉及到外部行,也就是在虚拟表 vt1-2 的基础上增加外部行,得到虚拟表 vt1-3。

        当然如果我们操作的是两张以上的表,还会重复上面的步骤,直到所有表都被处理完为止。这个过程得到是我们的原始数据

        当我们拿到了查询数据表的原始数据,也就是最终的虚拟表 vt1 ,就可以在此基础上再进行 WHERE 阶段 。在这个阶段中,会根据 vt1 表的结果进行筛选过滤,得到虚拟表 vt2

        然后进入第三步和第四步,也就是 GROUP HAVING 阶段 。在这个阶段中,实际上是在虚拟表 vt2 的基础上进行分组和分组过滤,得到中间的虚拟表 vt3vt4

        当我们完成了条件筛选部分之后,就可以筛选表中提取的字段,也就是进入到 SELECTDISTINCT 阶段 。首先在 SELECT 阶段会提取想要的字段,然后在 DISTINCT 阶段过滤掉重复的行,分别得到中间的虚拟表 vt5-1 vt5-2

        当我们提取了想要的字段数据之后,就可以按照指定的字段进行排序,也就是 ORDER BY 阶段 ,得到虚拟表 vt6

        最后在 vt6 的基础上,取出指定行的记录,也就是 LIMIT 阶段 ,得到最终的结果,对应的是虚拟表 vt7

        当然我们在写 SELECT 语句的时候,不一定存在所有的关键字,相应的阶段就会省略。

        同时因为 SQL 是一门类似英语的结构化查询语言,所以我们在写 SELECT 语句的时候,还要注意相应的关键字顺序,所谓底层运行的原理,就是我们刚才讲到的执行顺序

附言:

        在WHERE阶段将会过滤掉大量的数据,再进行GROUP和HAVING阶段,比起将过滤条件都写在HAVING中效率高。因为先进行分组再过滤,有可能大量的分组工作就白做了。又因为只有对分组的数据才又使用聚合函数的意义,而WHERE阶段在GROUP阶段之前,所以尚未分组就不能使用聚合函数,这也是为什么将聚合函数放在WHERE中会出错的原因。

http://www.yayakq.cn/news/730371/

相关文章:

  • 专注网站基础优化网站群维护方案
  • 我想弄个网站宁波网络公司联系方式
  • 搜索关键词的网站网站建设与设计毕业设计
  • wordpress兼容html5庆云网站seo
  • 网站建设网站合同版本wordpress多媒体不显示
  • 网站解析打不开帝国cms wordpress
  • python 网站开发小项目做婚纱网站的图片素材
  • 怎么用网站做word文件荣耀手机商城官方网站售后
  • 做外贸网站哪里好网站文章不收录怎么做
  • 山西城乡建设厅网站首页南昌整站优化
  • 湖北省建设厅质监站网站网站设计需要学什么软件
  • 如何做国际网站首页wordpress文章版权
  • 网站建设新得体会设计比较好的网站
  • 淘宝客网站模板前端开发简历模板
  • 有哪些官网做的比较好的网站深圳电器公司简介
  • 用.net做购物网站短视频剪辑培训班速成
  • 网站后台如何上传附件网站项目报价方案
  • 国外做的比较的ppt网站影视传媒公司
  • 网站建设费用明细报价网络行业有哪些
  • 网站建设会计网站建设首选唯美谷
  • 技术先进的网站建设公司wordpress mip手机主题
  • 电商货源网站一手房哪个网站做信息效果好
  • 怎么建立网站?阜宁做网站哪家公司好
  • 深圳网站设计 工作室功能 wordpress.org
  • 枣庄公司网站建设网络营销的发展现状及趋势
  • dede酒业企业网站模板百度销售平台怎样联系
  • 网上那些彩票网站可以自己做吗网站的专题怎么做
  • 初中信息科技怎么自己做网站济南建手机网站哪家好
  • 网站建设到上线的步骤过程设计一个简单的广告
  • 图书销售网站网页设计模板社交网络服务网站