【发布时间】:2019-10-23 11:43:12
【问题描述】:
我在 Oracle SQL 中多次使用 WITH 子句,并且知道超过 90% 的时间它执行得更快,但是由于我正在开发 Peoplesoft 应用程序,所以我只是想知道有没有办法使用Peoplesoft 查询管理器中的 WITH 子句?
【问题讨论】:
标签: peoplesoft peoplesoft-app-engine
我在 Oracle SQL 中多次使用 WITH 子句,并且知道超过 90% 的时间它执行得更快,但是由于我正在开发 Peoplesoft 应用程序,所以我只是想知道有没有办法使用Peoplesoft 查询管理器中的 WITH 子句?
【问题讨论】:
标签: peoplesoft peoplesoft-app-engine
将您的 SQL 放入记录视图中。向记录视图授予查询树安全性。通过 PS Query 从您的视图中选择 *。
从记忆中,我似乎也成功地将查询包装为记录视图中的内联视图。
例如记录查看 SQL:
SELECT * FROM
(
<INSERT Common Table Expression here>
)
使用示例公用表表达式
with MYCTE AS (SELECT 1 as fake FROM DUAL) SELECT fake FROM MYCTE WHERE fake = 1
那会变成
SELECT * FROM
(
with MYCTE AS (SELECT 1 as fake FROM DUAL) SELECT fake FROM MYCTE WHERE fake = 1
)
自然地,当您保存定义时,PeopleTools 应用程序设计器将重新格式化 SQL,因为它认为合适。
【讨论】: