insert into (columns)SELECT 邮编  FROM(
SELECT 邮编,count(1) FROM 码表
group by 邮编 having count(1)<=1)

解决方案 »

  1.   

    这样做貌似是因为里面的SELECT查询Oracle不能保证返回一条记录--如果是这样,你需要决定哪条记录是你需要的?不可能你多条都需要吧?最好给出完整的表结构,测试数据,计算方法和正确结果.否则耽搁的是你宝贵的时间。
    如果有多表,表之间如何关联?
    发帖注意事项
    http://topic.csdn.net/u/20091130/21/fb718680-98ff-4afb-98d8-cff2f8293ed5.html?24281
      

  2.   

    对对,我就是说,我不知道用SQL如何去指定我要的是哪条记录其实我可以保证查询到的就是一条结果或者没有结果。但是不知道这样的SQL怎么写
      

  3.   


    ------Oracle支持批量插入的功能,你可以模仿这个语句,修改下,可以满足你的需求。good luck!
    INSERT ALL
      WHEN type=1 THEN INTO tab1 VALUES (myseq.NEXTVAL, val)
      WHEN type=2 THEN INTO tab2 VALUES (myseq.NEXTVAL, val)
      WHEN type IN (3,4,5) THEN INTO tab3 VALUES (myseq.NEXTVAL, val)
      ELSE INTO tab4 VALUES (myseq.NEXTVAL, val)
    SELECT type, val FROM source_tab;
      

  4.   

    insert into c(a,b) select a.a,b.b from a,b where a.a=b.a;
    类似语法分2步走也不错啊
      

  5.   

    用这句!
    insert into A(postno) select 邮政编码 from postTable p where p.telno in (select telno from teltable);
      

  6.   

    说了半天,楼主是业务需要,还是自己研究?
    只要这张表不是很大,分两步解决就可以了。
    如果是自己写一堆inser into (value),那以上那些语句,就算给条件了又如何,还不是要分成100个 1000价目insert?