将 4 个表合二为一(Oracle R11)
JOIN 4 tables in one (Oracle R11)
我需要创建一个查询来显示 "Legal Entity"、"Application Name"、"Close Date" 和 "Period" 我正在使用 Oracle R11,现在我已经找到
的查询
"Legal Entity"
SELECT name
FROM hr_organization_information HOI
INNER JOIN hr_all_organization_units HAOU
ON HOI.ORGANIZATION_ID = Haou.Organization_Id
WHERE HOI.org_information_context LIKE 'Legal Entity Accounting'
ORDER BY NAME ASC;
和 "Application Name, Close Date, Period"
SELECT A.APPLICATION_ID,
B.APPLICATION_NAME,
TO_CHAR(A.END_DATE,'HH24:MI DD-MON-YYYYI'),
A.PERIOD_NUM
FROM GL_PERIOD_STATUSES A
INNER JOIN FND_APPLICATION_TL B ON A.APPLICATION_ID = B.APPLICATION_ID
WHERE A.Application_Id=101
AND LANGUAGE='US'
OR A.APPLICATION_ID=200
AND LANGUAGE='US'
OR A.APPLICATION_ID=222
AND LANGUAGE='US';
单独但我还没有找到在一个查询中加入它们的方法,你能帮我吗?
Antonio,我想 Brian 给了你很好的建议。如果他的建议没有引导您找到答案,那么在 EBS 论坛(或任何应用程序)上发帖也可能是值得的。我会提供有时加入 table_A 和 table_B 的方式是通过 table_C。也就是说,如果您在一个 se 的查询中没有找到任何直接相关的数据到另一个集合中的 tables 之一,那么查看 FK 定义并指向这些 tables 到看看您是否可以找到 table 当前不属于与集合相关的任一查询的一部分。您弄清楚如何将每个当前查询连接到它,这就是将两个查询连接在一起的方式。
谢谢大家!
你们给我的建议都很有用,我发现 table HR_LEGAL_ENTITIES (Table C) 有两列让我加入 Table A 和 Table B,最终查询为:
SELECT HAOU.NAME,
FAT.APPLICATION_NAME,
TO_CHAR(GPS.END_DATE,'HH24:MI DD-MON-YYYY'),
GPS.PERIOD_NUM
FROM HR_ALL_ORGANIZATION_UNITS HAOU
INNER JOIN HR_LEGAL_ENTITIES HLE
ON HLE.ORGANIZATION_ID = HAOU.ORGANIZATION_ID
INNER JOIN GL_PERIOD_STATUSES GPS
ON HLE.SET_OF_BOOKS_ID = GPS.SET_OF_BOOKS_ID
INNER JOIN FND_APPLICATION_TL FAT
ON GPS.APPLICATION_ID = FAT.APPLICATION_ID
WHERE GPS.Application_Id IN (101,200,222) AND LANGUAGE='US'
ORDER BY NAME ASC;
Regards!
我需要创建一个查询来显示 "Legal Entity"、"Application Name"、"Close Date" 和 "Period" 我正在使用 Oracle R11,现在我已经找到
的查询"Legal Entity"
SELECT name
FROM hr_organization_information HOI
INNER JOIN hr_all_organization_units HAOU
ON HOI.ORGANIZATION_ID = Haou.Organization_Id
WHERE HOI.org_information_context LIKE 'Legal Entity Accounting'
ORDER BY NAME ASC;
和 "Application Name, Close Date, Period"
SELECT A.APPLICATION_ID,
B.APPLICATION_NAME,
TO_CHAR(A.END_DATE,'HH24:MI DD-MON-YYYYI'),
A.PERIOD_NUM
FROM GL_PERIOD_STATUSES A
INNER JOIN FND_APPLICATION_TL B ON A.APPLICATION_ID = B.APPLICATION_ID
WHERE A.Application_Id=101
AND LANGUAGE='US'
OR A.APPLICATION_ID=200
AND LANGUAGE='US'
OR A.APPLICATION_ID=222
AND LANGUAGE='US';
单独但我还没有找到在一个查询中加入它们的方法,你能帮我吗?
Antonio,我想 Brian 给了你很好的建议。如果他的建议没有引导您找到答案,那么在 EBS 论坛(或任何应用程序)上发帖也可能是值得的。我会提供有时加入 table_A 和 table_B 的方式是通过 table_C。也就是说,如果您在一个 se 的查询中没有找到任何直接相关的数据到另一个集合中的 tables 之一,那么查看 FK 定义并指向这些 tables 到看看您是否可以找到 table 当前不属于与集合相关的任一查询的一部分。您弄清楚如何将每个当前查询连接到它,这就是将两个查询连接在一起的方式。
谢谢大家!
你们给我的建议都很有用,我发现 table HR_LEGAL_ENTITIES (Table C) 有两列让我加入 Table A 和 Table B,最终查询为:
SELECT HAOU.NAME,
FAT.APPLICATION_NAME,
TO_CHAR(GPS.END_DATE,'HH24:MI DD-MON-YYYY'),
GPS.PERIOD_NUM
FROM HR_ALL_ORGANIZATION_UNITS HAOU
INNER JOIN HR_LEGAL_ENTITIES HLE
ON HLE.ORGANIZATION_ID = HAOU.ORGANIZATION_ID
INNER JOIN GL_PERIOD_STATUSES GPS
ON HLE.SET_OF_BOOKS_ID = GPS.SET_OF_BOOKS_ID
INNER JOIN FND_APPLICATION_TL FAT
ON GPS.APPLICATION_ID = FAT.APPLICATION_ID
WHERE GPS.Application_Id IN (101,200,222) AND LANGUAGE='US'
ORDER BY NAME ASC;
Regards!