我正在尝试将数据从SQL提取到excel文件,以下是表中的示例数据。 数据只存在于一个表中,我无法控制数据插入其中的方式,因此无法在多个表之间使用连接。
+------+--------------------------------+--------------------------------------+------------------------------------+
| ID | URL | TITLE | LINKS_TO |
+------+--------------------------------+--------------------------------------+------------------------------------+
| 1 | http://www.loc.gov/ | Library | http://www.loc.gov/library |
| 2 | http://www.loc.gov/library | Catalog | NULL |
| 3 | http://www.nasa.gov/ | NASA | http://www.nasa.gov/images |
| 4 | http://www.nasa.gov/images | National Institutes of Health (NIH) | NULL |
我需要提取ORIGINAL_URL及其外链的标题(LINKS_TO),如下面的输出所示。我试着把桌子加到自己身上,但这对我来说太复杂了。这是想要的输出。
+------------------------------+---------------------------------------+
| ORIGIN_URL | TITLE |
+------------------------------+---------------------------------------+
| http://www.loc.gov/ | Catalog |
| http://www.nasa.gov/ | National Institutes of Health (NIH) |
请帮忙吗?
答案 0 :(得分:2)
你可以自己LEFT OUTER JOIN
这个表:
SELECT U.URL AS ORIGIN_URL,
Linked.TITLE
FROM dbo.URLs U
LEFT OUTER JOIN dbo.URLs Linked
ON U.LINKS_TO = Linked.URL
如果您只想要链接的内容,请使用INNER JOIN
:
SELECT U.URL AS ORIGIN_URL,
Linked.TITLE
FROM dbo.URLs U
INNER JOIN dbo.URLs Linked
ON U.LINKS_TO = Linked.URL