在Mysql中如何使用SQL语句判断某条记录是否存在,如果不存在,则添加,存在则修改.

解决方案 »

  1.   

    insert into on duplicate update set 
      

  2.   

    INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
        [INTO] tbl_name
        SET col_name={expr | DEFAULT}, ...
        [ ON DUPLICATE KEY UPDATE
          col_name=expr
            [, col_name=expr] ... ]http://dev.mysql.com/doc/refman/5.1/en/insert.html
      

  3.   

    http://bbs.51cto.com/viewthread.php?tid=717981&pid=3660800&page=1&extra=page%3D1#pid3660800
    看这个 选一个合适的 你会明白的
      

  4.   

    直接使用三楼提供的 INSERT INTO tbl_name ..... ON DUPLICATE KEY UPDATE
    不过需要设置主键或者UNIQUE  KEY
    MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
      

  5.   

    3楼是判断更新的,
    判断是否存在,
    我个人的方法是:
    1:用一个标志位字段,每插入数据该字段为1,查询的时候如果数据不存在默认是为0的,
    2:直接查询你查的字段并count(字段),如果为0就没有
    select count(...) where ...以上 个人之见 
      

  6.   

    如果表中有KEY OR 唯一索引,可以直接用INSERT INTO tbl_name ..... ON DUPLICATE KEY UPDATE
    否则用两条SQL语句解决