重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1062|回复: 1

23C新特性之一:select 语句不用FROM 部分也可以

[复制链接]
发表于 2023-4-10 17:45:02 | 显示全部楼层 |阅读模式
曾几何时,看到其他数据库,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:11 | 显示全部楼层
补充一下以前的情况:
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

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-4-18 19:08 , Processed in 0.097039 second(s), 19 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表