我试图创建一个演示来解释如何加入并遇到了一些困难。
CREATE TABLE sample (
id INT
);
INSERT INTO sample VALUES (1),(2),(3),(4);
那是我的架构。
SELECT *
FROM sample AS s1
JOIN sample AS s2;
如果你这样做,你会得到这个:
1,1
1,2
1,3
1,4
2,1
2,2
...
4,3
4,4
至少这是 JOIN 看到的。但是,如果您尝试运行它,则会得到一列的值等于第一列。我不想要那个 - 我想要两列。
我可以做s1.*, s2.*
而不是*
我希望 SQL 使用它自己的分组。原因是 LEFT 和 RIGHT JOIN 不关心数据如何出现在输出中 - 他们关心的是连接到 RIGHT 和 LEFT 的表。而且,这并不能很好地扩展。我只想看看 JOIN 看到了什么。
有任何想法吗?