首页 文章

Oracle SQL语法:With子句

提问于
浏览
3

我目前正在使用Java版本General SQL Parser for Oracle来处理一些相对复杂的Oracle SQL查询 .

在我的情况下,我无法访问任何Oracle数据库但只有文件中的SQL语句我遇到一些解析器失败的语句,其中一个特别归结为以下内容 .

select id from (
with foo as (
    select bar from sometable
)
select *
from foo
)

如果没有嵌套,可以毫无问题地解析with子句 .

with foo as (
    select bar from sometable
)
select *
from foo

那么我在解析器或语句中有错误吗?

最好的,威尔

2 回答

  • 2

    SQL语句有效,所以我猜解析器无法处理它 .

    可以肯定的是,尝试在SQL Plus中运行SQL .

  • 2

    这是Oracle中完全有效的声明(我刚刚尝试过) .
    但它可能不是有效的ANSI SQL,这可能是解析器不理解它的原因 .

相关问题