oracle的dual用法

Oracle的Dual表是一个虚拟表,常用于执行单行单列的查询,例如计算常数表达式、获取系统时间等。在SQL查询中,当不需要实际表时,可以使用Dual作为从表。本文介绍了如何利用Dual进行简单的SQL操作,包括获取当前日期、执行数学运算和生成随机数等。同时,也展示了如何通过子查询与Dual结合,构建多步计算的SQL语句。
摘要由CSDN通过智能技术生成

Dual简单的说就是一个空表,Oracle提供的最小的工作表,只有一行一列,具有某些特殊功用。常用来通过select语句计算常数表达式。

sql标准格式

select * from

当全用子查询的数据时

SELECT
		( SELECT count( 1 ) FROM xx WHERE xxxxxx ) t1,
		( SELECT sum( b ) FROM xxx WHERE xxxxx ) t2 
FROM
	dual

全用的子查询查出了结果 ,最后不需要from表了,就必须用伪表dual来满足格式需要了

注意:

t1,t2都只能返回一个字段
t2 返回两个字段时,会报错(如):

SELECT
		( SELECT count( 1 ) FROM xx WHERE xxxxxx ) t1,
		( SELECT sum( b ), sum( c ) FROM xxx WHERE xxxxx ) t2 
FROM
	dual

几个小用法:

--1.获取系统时间
select sysdate from dual;
--2.做运算
select 99*99 from dual;
--3.获取随机数
select DBMS_RANDOM.random from dual;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值