重庆思庄Oracle、Redhat认证学习论坛
标题:
23C新特性之一:select 语句不用FROM 部分也可以
[打印本页]
作者:
郑全
时间:
2023-4-10 17:45
标题:
23C新特性之一:select 语句不用FROM 部分也可以
曾几何时,看到其他数据库,SQLSERVER,MYSQL,POSTGRESQL等数据库,希望做一个计算时,或者看一个时间,可以直接select 8*8;就可以得到结果,但ORACLE不行,需要提供FROM 部分
比如:select 8*8 from dual;
才能获取到结果,但是,从23C开始,这个情况,发生了变化,ORACLE也可以只需要SELECT 部分,就可以出结果了,废话少说,看例子:
1.先看版本:
SQL> select banner,banner_full from v$version;
BANNER
--------------------------------------------------------------------------------
BANNER_FULL
--------------------------------------------------------------------------------
Oracle Database 23c Free, Release 23.0.0.0.0 - Developer-Release
Oracle Database 23c Free, Release 23.0.0.0.0 - Developer-Release
Version 23.2.0.0.0
2.测试
SQL> select sysdate;
SYSDATE
---------
10-APR-23
SQL> select sysdate from dual;
SYSDATE
---------
10-APR-23
SQL> select 8*8;
8*8
----------
64
SQL> select 8*8 from dual;
8*8
----------
64
看到了,以前的DUAL表依然存在,但是也支持只有SELECT部分,同样可以得出结果。
好了,今天新特性之一例子就到这里。我们后续还会持续提供其他例子。
作者:
郑全
时间:
2023-4-10 17:55
补充一下以前的情况:
SQL> select banner_full from v$version;
BANNER_FULL
--------------------------------------------------------------------------------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> select sysdate;
select sysdate
*
ERROR at line 1:
ORA-00923: FROM keyword not found where expected
SQL> select sysdate from dual;
SYSDATE
------------
10-APR-23
欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/)
Powered by Discuz! X3.2