-
AS 既可以用作列的别名,也可以用作表的别名
示例
SELECT profession AS mc_prof FROM my_contacts AS mc GROUP BY mc_prof ORDER BY mc_prof;
-
CROSS JOIN 交叉联接
(1) 相当于对两张表做笛卡尔积
(2) CROSS JOIN 一般不作实际使用,主要用途是检测的运行速度
(3) 交叉连接属于内连接,其他的内连接方式基本上是交叉连接的结果去掉某些行
(4) 示例
SELECT t.toys, b.boy FROM toys AS t CROSS JOIN boys AS b;
-
INNER JOIN 内联接
(1) 在交叉连接的基础上添加了某些条件
(2) 等值连接:联接的条件使用 = 连接
示例
SELECT boy.boys, toy.toys FROM boys INNER JOIN toys ON boys.toy_id = toys.toy_id;
(3) 不等值联接: 属于内联接 且 不属于 等值联接
示例
SELECT boy.boys, toy.toys FROM boys INNER JOIN toys ON boys.toy_id <> toys.toy_id;
(4) 自然联接:两个关系在共同属性上的等值连接。即联接条件是两张表的相同名称的列上的值相等
示例
boys toys ---------------- ---------------- boy_id | toy_id toy_id | toy ---------------- ---------------- | | ---------------- ---------------- SELECT boy.boys, toy.toys FROM boys NATURAL JOIN toys;
等价于
SELECT boy.boys, toy.toys FROM boys INNER JOIN toys ON boys.toy_id = toys.toy_id;
(5) 区分等值连接和不等值的连接的原因是内部查询方式?(个人理解)
chapter08_联接与多张表的操作
最新推荐文章于 2022-10-31 13:11:02 发布