2014-03-26 64 views
0

我是一个完整的SQL初学者。评估sql中的嵌套查询

我想知道如何处理嵌套的SQL查询,例如...

Query_One = SELECT firstname, lastname FROM Person; 
Query_Two = SELECT lastname AS surname FROM (Query_One) NATURAL JOIN Query_One 

我怎么能在例如一个语句做到这一点。有没有办法将表单分别保存到变量中?

+0

那么你的例子似乎并不需要嵌套查询,但只是:SELECT lastname AS surname FROM Person。那么你试图达到什么样的目标,这使你认为你需要一个嵌套查询? –

回答

1
SELECT lastname AS surname FROM (SELECT firstname, lastname FROM Person); 

但在评论中指出,这是不是真的有必要,SELECT lastname as surname FROM Person将做到这以及。

另外,一个表格自身的自然连接没有意义。

+0

由于以下原因,我对此感到困惑:第一个表中的列被重命名,然后它被重新命名之前的内容加入。这对桌子没有什么影响吗? – Ogen

+0

你是在谈论你的代码还是我的?在我的身上,任何东西都没有加入。它只是将两列内部查询的结果投影到一列,然后重命名该列。 – BadIdeaException

+0

我在说我的 – Ogen

0

尝试以下结构。你应该能够嵌入查询中FROM,但在你的例子,我认为这是没有必要的:

SELECT p.lastname AS surname FROM (SELECT firstname, lastname FROM Person) p NATURAL JOIN Query_One;