希望有人可以帮助我.
所以假设我有一个名为"TEMP_TABLE"的临时表
EMP_ID number
EMP_FNAME varchar2()
EMP_LNAME varchar2()
Run Code Online (Sandbox Code Playgroud)
"TEMP_TABLE"中的记录
1, Some, Guy
2, Some, Girl
3, Some, Animal
Run Code Online (Sandbox Code Playgroud)
通过一些SQL魔术,我不打算深入研究,计算这些值并将其放入TEMP_TABLE中,select * from TEMP_TABLE即函数返回的a 的多重集合
让我们说功能是 FUNC_THAT_RETURNS_TABLE
好的,如果我说的话 Select * from table("FUNC_THAT_RETURNS_TABLE");
我回来了:
1, Some, Guy
2, Some, Girl
3, Some, Animal
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.
所以现在我创建另一个名为的表 "NEWLY_CREATED_TABLE"
说:
Create Table "NEWLY_CREATED_TABLE" AS
(Select * FROM table("FUNC_THAT_RETURNS_TABLE"));
Run Code Online (Sandbox Code Playgroud)
请注意,该表是通过查询函数创建的
所以这三个记录现在应该在NEWLY_CREATED_TABLE内
问题是,如果我说:
Select * FROM NEWLY_CREATED_TABLE
Union
SELECT * FROM table("FUNC_THAT_RETURNS_TABLE");
Run Code Online (Sandbox Code Playgroud)
结果集是:
1, Some, Guy
1, Some, Guy
2, Some, Girl
2, Some, Girl
3, …Run Code Online (Sandbox Code Playgroud)