制定选择查询

时间:2014-01-11 21:12:12

标签: sql

我在查询以下内容时遇到了困难;

tablename =帐户

NAME | AccountCode | ParentAccountCode

约翰| A1 | NULL

菲利普| A2 | A1

我想要一个查询来选择2列

  

第一栏=姓名
  第二列= ParentAccountName(自定义)

ParentAccountName列填充了代表其代码的Name。

所以Filip有一个ParentAccountCode A1,即John,因此自定义列ParentAccountName中的值应为'John'

应该是

我这样说:

> SELECT A.Name, AA.Name AS ParentAccountName FROM Account AS A
>     INNER JOIN Account AS AA
>     ON A.ParentAccountNumber = AA.AccountNumber WHERE A.AccountNumber = 'A2'

这导致ParentAccountName = John。 所以这很好,但是当选择AccountNumber = A1时,它不会显示结果。

即使ParentAccountName = null,如何让SQL给我一个结果集?

2 个答案:

答案 0 :(得分:1)

您需要左外连接而不是内连接。

SELECT A.Name, AA.Name AS ParentAccountName FROM Account AS A
LEFT OUTER JOIN Account AS AA
ON A.ParentAccountNumber = AA.AccountNumber

答案 1 :(得分:0)

也许你需要自我加入:

SELECT T1.Name, T2.Name AS ParentAccountName
FROM Account T1 INNER JOIN Account T2 ON (T2.Account = T1.ParentAccountCode)