什么是 sql 中的"master join"


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 现在,但不是很好的形式,因为如果salescar表具有相同的列名称,那么您'D关于歧义有错误。

另外,决定是否要使用INNER JOINLEFT 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 

最新更新