SQL缺这样一条语句,就是:INSERT+UPDATE的结合向表写入记录,如果存在,UPDATE;如果不存在,INSERT现实中,只用UPDATE修改不到,只用INSERT会出错,都不行。
既然没有这样的语句,那么最简洁高效的实现 INSERT+UPDATE 的SQL是什么?

解决方案 »

  1.   

    if exists(select * from tb where xx=xx)
       update_command
    else
       insert_command
      

  2.   

    if exists(select 1 from tb whre 条件)
      update.....
    else 
      insert........
      

  3.   

    IF EXISTS (SELECT * FROM tb WHERE id= @IDCO)
          UPDATE tb
    else
          INSERT tb 
      

  4.   

    if exists(select * from tb where col='')
       update tb set col=.....
    else
       insert tb select .....
      

  5.   

    看样子只有这一种方法了,唉, 一个查询+一个判断+两个极相似的更新语句。多复杂啊。 SQL的设计者脑筋真不好使