select into 和 insert into select 两种表复制语句

作者:leen 来源:千一网络(原创) 日期:2014-8-23
selectinto destTbl from srcTbl
insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl

如上 destTbl 和 srcTbl 分别为两个表名。

以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:

  • 第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。
  • 第二句(insert into select from)要求目标表(destTbl)存在,由于目标表已经存在,所以我们除了插入源表(srcTbl)的字段外,还可以插入常量,如例中的:5。

以下两段代码摘自网友的博客,由于他也摘取了我的文章,所以相互摘录,供网友查看。

select into

insert into select

相关阅读

你前面那位网友看了:KeePass Password Safe 1.x 版本和 2.x 版本有什么不同?

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
  • 1 楼:评论
    刚好用到了,感谢你
  • 2 楼:回复
    这些很有用,谢谢了.
  • 3 楼:感谢
    感谢大家对千一网络的支持
  • 4 楼:评论
    多谢
  • 5 楼:评论
    说得很明白 谢谢
  • 6 楼:评论
    源表是两张表,怎样写这个语句?这个语句insert into yjbzlb2(id_no,name,ysxm,jzrq,ypm,gg,dw,lsj,sl,zxks,je,lx,bm,fph,fpxh) select a.patient_id,a.name,a.doctor,a.visit_date,b.item_name,
    b.item_spec,b.units,b.amount,b.performed_by,b.costs,b.item_class,b.item_code,b.rcpt_no,b.item_no from clinic_master a,outp_bill_items b
    where  a.name like '%XXX%' and a.visit_no=b.visit_no and ;应怎样修改?总是提示"not enough values"
  • 7 楼:回复:源表是两张表,怎样写这个语句?这个语句insert into yjbzlb2...
    yjbzlb2 有 15 个字段,而 select 中只有 14 个字段。
  • 8 楼:评论
    GOOD!
  • 9 楼:评论
    非常好用,举例很实用 ,谢谢
  • 10 楼:评论
    恩,多谢解释
  • 11 楼:谢谢指教
  • 12 楼:评论
    很好
  • 13 楼:评论
    谢谢指教,非常感谢
  • 14 楼:评论
    非常实用 谢谢
  • 15 楼:评论
    多谢了
  • 16 楼:评论
    我也用到了 , 顶
  • 17 楼:谢谢
    刚好用上
  • 18 楼:编程爱好者
    北京的菜鸟网友来过 这个很有用, 实际中遇到了好几次  收藏了,多谢了!
  • 19 楼:评论
    用上了,谢谢
  • 20 楼:评论
    谢谢
  • 21 楼:评论

        简明扼要,通俗易懂。
  • 22 楼:评论
    已经用到,谢谢
  • 23 楼:评论
  • 24 楼:评论
    用chrome看的时候不太对
  • 25 楼:评论
    谢谢,不知道您指的哪方面,我刚才用 Chrome 看了,导航栏下面的搜索不是居中的(和 IE 中不同),这个在本次网站改版中将会得到修正。不知道您还发现发哪里不对,因为我们无法联系上您,您一定要给我们指出噢~
  • 26 楼:评论
  • 27 楼:评论
    实用啊,谢谢
  • 28 楼:评论
    字也不多,说的就是清楚。。
  • 29 楼:评论
    123
  • 30 楼:评论
    123
  • 31 楼:评论
    informix 是不是不支持select into写法,我用了报错。SQL:select *
    into zgh_tpm from tpd_radio_bts
    where scan_start_time=extend(current+interval(-5) hour to hour,year to hour)||':00:00'
    用nsert into select正常。
  • 32 楼:北京菜鸟
    谢谢了, 呵呵
  • 33 楼:评论
    两个表可以用左连接写 例如:
    select * from  table1 t1 left join table2 t2  on t1.xx_id = t2.xx_id
    这样写就可以
  • 34 楼:评论
    很脑残, 你有这样用过么?  根本就不能使用嘛!
  • 35 楼:评论
    楼上,这是 SQL Server 的。
  • 36 楼:评论
    谢谢
  • 37 楼:评论
    GOOD .
  • 38 楼:评论
    Thank you
标题:必填
内容:
赞助商们