Xi *_*ang 5 sql t-sql sql-server
我正在使用SQL Server 2008.我有2个表变量,如
FirstName
==========
Little
John
Baby
LastName
==========
Timmy
Doe
Jessica
Run Code Online (Sandbox Code Playgroud)
我希望结果表是:
First Last
=====================
Little Timmy
John Doe
Baby Jessica
Run Code Online (Sandbox Code Playgroud)
注意,没有PK可以加入2个表.我试图使用光标,但不知道如何开始.
- - 更新 - - -
我知道这是一种罕见的情况,但我正在编写一个脚本来清理遗留数据.我们知道"小"与"蒂米"的唯一方式是他们都是这张桌子的第一张唱片.如果我们有桌子的PK但它没有关系会有帮助吗?
ID FirstName
==========
1 Little
2 John
3 Baby
----------
ID LastName
==========
4 Timmy
5 Doe
6 Jessica
----------
Run Code Online (Sandbox Code Playgroud)
我不熟悉TSQL所以我认为我可以遍历2个表,就像在内存中循环遍历Arrays一样.
您可以尝试这样的事情,根据行号进行匹配:
SELECT FirstName AS First, LastName AS Last
FROM
(
SELECT ROW_NUMBER() OVER (ORDER BY ID) AS RowNum, FirstName
FROM FirstName
) t1
INNER JOIN
(
SELECT ROW_NUMBER() OVER (ORDER BY ID) AS RowNum, LastName
FROM LastName
) t2
ON t1.RowNum = t2.RowNum
Run Code Online (Sandbox Code Playgroud)
但是不要把它当作一个你不需要钥匙的信号.