Insert into select 和 select into from 的区别

发现面试时总是喜欢出现从A表把数据插入到其他的表今天专门来分析下

Insert into NewTable select * from OldTable   NewTable 必须的存在的,

不然在插入是会出现表或视图不存在

select * into NewTable from OldTable NewTable 是不能存在的

今天在sql/plus中第一句怎么也执行不下去,总是报"ORA-00905:缺失关键字"。啥原因呢?一查,原来是PL/Sql与T-SQL区别。
T-SQL中该句正常,但PL/SQL中解释是:
select..into is part of PL/SQL language which means you have to use it inside a PL/SQL block. You can not use it in a SQL statement outside of PL/SQL.
即不能单独作为一条sql语句使用,一般在程序块中给变量赋值。

如果在PL/SQL中实现该功能,可使用Create table newTable as select * from ...:
如: create table NewTable as select * from OldTable;

提示:Mysql下面也无法运行

作者:Rocky Li 声明:版权所有,转载请注明出处网址:http://www.cnblogs.com/RockyLi

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值