select * from THE?

偶然看到有人这么写SQL.... (其中f_test_tab_func是一个表函数,返回一个集合)

-- Syntax Correct
select * from THE(select f_test_tab_func(20) from dual);

 好生奇怪,这里面的THE是个什么东东呢?看起来想table function但是又不是,因为如果是table function的话,括号里面是不能够用select from dual的方式来返回一个集合的。也就是说如下写法是有语法错误的...

-- Syntax Error
select * from TABLE(select f_test_tab_func(20) from dual);

-- Syntax Correct
select * from TABLE(f_test_tab_func(20));

查找了半天,也没有找到解释这个THE表示啥东东,不过既然是有这种用法的,那么先记着吧。(THE这个到底是啥缩写呢,Table H.... Expression??)

原文地址:https://www.cnblogs.com/fangwenyu/p/2007202.html