数据蛙数据分析每周作业

第二周sql

2018-12-30  本文已影响2人  巍期

这周比起上一周还忙(依旧没有元旦假期的我们= =),按照目录的进度学得比上周少,但看得比上周更认真,总结如下:

1.子查询:

子查询即嵌套在其他查询中的查询

如何理解子查询,书中给了例子

如果要利用子查询:

这个就跟excel中的if 一样,从内到外。可以把where中的语句换为嵌套

书中说嵌套会因为性能上的限制不能太多,我觉得,嵌套太多也并不高效,理解也复杂。

2.连接表:主键

外键:另外张表的某一列,包含另外一个表的主键值,定义了两个表的关系

创造连接:

在这个例子中,用where连接 。其中

为完全限定列名。

内部联结:inner join语法

3.创造高级联结:

将表创建别名

(应该注意的是,别名只在查询中使用,表别名不返回客户机)

自联结:

第二个是使用自联结的语句,第二个要比第一个要简洁,更好理解

自然联结:排除多次出现,使每个列只返回一次。

外部联结;

使用带函数的联结。

4.组合查询:多条select 语句查询,结果作为单个查询结果集返回。这些组合查询就称之为并或复合查询

使用union

union的规则:

必须由两条或者两条以上的select语句组成,语句之间用union分隔

union中的每个查询必须包含相同的列,表达式或聚集函数

列数据类型必须兼容,类型不一定要相同。

Union已经自动在查询结果中去除了重复的行,可以用union all 返回所有行

在union中只能使用一条order by,而且必须出现在最后select语句后。

Union优势在简化复杂的where。

总结:加油忙过月末月初,虽然学的进度少,但感觉比上周追进度理解的要好。看来宁可慢一点。

上一篇下一篇

猜你喜欢

热点阅读