1

到目前为止,我只使用过 SQL Server,这是我第一次使用 Oracle,但我无法弄清楚。

我想选择从视图中可访问的所有数据,并且我想选择当前系统日期。我尝试运行这组查询,但没有返回任何内容。

SELECT
    (SELECT SYSDATE FROM DUAL),
    *
FROM myView;

我注意到这missing expression是抛出的,但我无法理解(不知道)我的查询有什么不正确的地方。

更新:

这是我试图运行的整个查询,没什么特别的。

4

1 回答 1

6

不需要子查询,您需要为您选择的对象添加别名:

select sysdate, a.* from myview a

如果您的子查询更复杂,您仍然需要这样做:

select ( select sysdate from dual ), a.* from myview a

如果您要返回单行,那么 CROSS JOIN 会更合适:

select dt, a.*
  from myview a
 cross join ( select sysdate as dt from dual )
于 2013-06-26T09:16:23.870 回答