Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何组合两个表的结果_Sql_Sql Server_Sql Server 2005 - Fatal编程技术网

Sql 如何组合两个表的结果

Sql 如何组合两个表的结果,sql,sql-server,sql-server-2005,Sql,Sql Server,Sql Server 2005,我有如下表1: 表2: 结果应该是这样的: 我想合并上面两个表的结果。我怎么做?谢谢您的帮助。看起来他们之间没有关系,所以交叉连接是您所需要的: SELECT * FROM Table1 t CROSS JOIN Table2 s 编辑:使用行号() 如果您对两个表中的所有记录都感兴趣,而不仅仅是匹配的行,那么将内部联接更改为完全外部联接可以显示您迄今为止所做的尝试吗。@PeterSmith我想得到这样的结果:似乎不正确,我得到了9行。我想得到这样的结果:DLX为什么要连接到第一行?为什

我有如下表1:

表2:

结果应该是这样的:


我想合并上面两个表的结果。我怎么做?谢谢您的帮助。

看起来他们之间没有关系,所以
交叉连接是您所需要的:

SELECT *
FROM Table1 t
CROSS JOIN Table2 s
编辑:使用
行号()


如果您对两个表中的所有记录都感兴趣,而不仅仅是匹配的行,那么将
内部联接更改为
完全外部联接

可以显示您迄今为止所做的尝试吗。@PeterSmith我想得到这样的结果:似乎不正确,我得到了9行。我想得到这样的结果:
DLX
为什么要连接到第一行?为什么
SUI
到第二个?没有亲戚我怎么能这么做@ZaneKeyI添加上述结果的照片。你能看到并想象我想要得到什么结果吗?你没在听我说,为什么
DLX
连接到第一行?!为什么不是第二个呢???我只想从表1和表2合并得到一个包含3行的新表,如下所示:DLX连接到第一行或第二行并不重要。
SELECT tt.loaiphong,ss.col1,ss.col2........
FROM (SELECT t.*,ROW_NUMBER() OVER(ORDER BY (SELECT 1)) as rnk FROM Table1 t) tt
INNER JOIN(SELECT s.*,ROW_NUMBER() OVER(ORDER BY (SELECT 1)) as rnk FROM Table2 s) ss
 ON(tt.rnk = ss.rnk)