1

我有一个关于实体 SQL 的问题,我需要根据特定的列值在表本身中进行查找。我真的不知道如何表达这个问题,但我会尽力而为。此外,我不太了解实体 SQL 的语法,希望在这里得到一些帮助。基本上我有 2 个表(table1 和 table2)。在表 1 中,我有名称和文件夹 ID。在表 2 中,我有 folderID 的 parentFolderID 和 FolderNames。

我需要创建一个 select 语句,在其中显示 table1 中的每个名称以及它的 parentFolder 名称(如果有意义的话)。我可以轻松地获取父文件夹 ID,但是对于如何使用它来加入(也许?)表本身感到困惑。

尝试执行此操作时,JOIN table2 on table2.folderID = table2.parentFolderID 我收到此错误,“在 JOIN 子句中不允许左相关”。我不确定这个错误是什么意思,而且我也不熟悉 ESQL,希望得到任何帮助/提示。我附上了一张我想要完成的照片,以防我的描述令人困惑。

期望的输出

4

1 回答 1

0

如果父子关系仅针对一个级别,则可以在 table2 上使用自联接

select  a.cust_name, c.folder_name 
from table1 a 
inner join table2 b on a.cust_folder_id =  b.folder_id 
inner join table 2 c on b.parent_folder = c.folder_id 
于 2018-08-08T19:44:52.307 回答