CREATE TABLE car (id INT, name1 CHAR(15))
CREATE TABLE sales (sid INT, cid INT, year1 INT)
INSERT INTO car
VALUES (1, 'vento'), (2, 'vento'), (3, 'baleno'), (4, 'swift')
INSERT INTO sales
VALUES (1, 1, 2017), (2, 3, 2018), (3, 3, 2017), (5, 4, 2017)
--verify
--SELECT * FROM car
--SELECT * FROM sales
--1st query
SELECT sid, cid, year1, name1
FROM sales master
INNER JOIN car ON cid = id
--2nd query
SELECT sid, cid, year1, name1
FROM sales
INNER JOIN car ON cid = id
第一查询和第二查询有什么区别?
"主加入"的目的是什么?我们什么时候应该使用它?
没有什么不同,在功能上是相同的。为了解释,我有资格证明master
只是一个别名。
我也强烈建议您还要合格其余的查询,因为...car on cid = id
Works 现在,但不是很好的形式,因为如果sales
或car
表具有相同的列名称,那么您'D关于歧义有错误。
另外,决定是否要使用INNER JOIN
,LEFT OUTER JOIN
等。
SELECT master.sid
,master.cid
,master.year1
,c.name1
FROM sales master
INNER JOIN car c ON master.cid = c.id --(1st)
SELECT s.sid
,s.cid
,s.year1
,c.name1
FROM sales s
INNER JOIN car c ON s.cid = c.id --(2nd)
在sql中没有称为主加入的概念。
SELECT
sid, cid, year1, name1
FROM sales master
INNER JOIN car
ON
cid = id
上面的查询将主人作为销售表的别名名称,并在销售表和汽车表之间进行内部连接您可以使用Alias(Master(参考cid
如下:
SELECT
sid, cid, year1, name1
FROM sales master
INNER JOIN car
ON
master.cid = id