记 From DUAL

本文介绍了DUAL表在数据库操作中的作用,特别是在Oracle和MySql中的支持情况。DUAL表常用于无表计算和构造结果集,例如进行简单的数学运算、组合多个子查询结果。同时,它也可用于Insert语句前的数据校验,确保插入数据的正确性。通过实例展示了DUAL表的实用性和灵活性。

DUAL:临时表,可以用于构造或者计算数据

Sql Server:不支持该写法!!!!!

Oracle、MySql支持该写法。

例子1:用于无表计算

select 3*4 as result from dual

例子2:将没有关系的结果集构造成一个结果集

select 
(select count(1) from user_info where sex=1) as a1,
(select count(1) from user_info_new where user_tel is not null or user_tel !='') as a2
 from dual


例子3:Insert 前校验数据是否存在。满足where条件才会执行insert

INSERT INTO table (primarykey , name2, name3, ...)

SELECT key, value1, value2, ...

FROM dual

WHERE not exists (select * from table where primarykey = key);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值