我正在寻找一种可靠的算法方法来在 Oracle 中嵌套查询,而无需解析和重建 SQL 语句。在 DB2、MYSQL 和 SQLITE 中,我可以简单地从内部子查询中设置的最大列嵌套到最外部查询中设置的最小列,如下所示:
SELECT A, B FROM (
SELECT A, B, C FROM (
SELECT A, B, C, D FROM (
SELECT * FROM myTable
)
)
)
)
这对 Oracle 不起作用,我必须使用 WITH 子句,但这允许我进行一层嵌套,例如
WITH Q1 as (
SELECT * FROM myTable
)
SELECT A, B FROM Q1
是否有一种算法方法可以在 Oracle 中嵌套 select 语句,如上面的 DB2 或 MySQL
您总是可以假设它是一个表。查询是自动生成的
找到根本原因:
我的代码假定需要一个“AS 别名”并将其附加到子查询中,如“从(从 myTable 中选择 A、B、C)AS Q1中选择 A、B ” --- Oracle 不喜欢这样并给出错误“缺少右括号”