AOASTOP 2022-03-11 16:05 采纳率: 100%
浏览 237
已结题

insert 加 where条件

 INSERT INTO T1(a,b,c) VALUES ('1','2','3')

如果原来表内有数据: a='1'并且b='2'  则本次insert失效,不能再加进去,除了使用复合主键,其他方法怎么实现?

  • 写回答

4条回答 默认 最新

  • CSDN专家-sinJack 2022-03-11 16:31
    关注

    可以直接写sql,insert into select这种语法。
    将要插入的值,写在select 中,where中的条件就是判断是否满足a<>'1' or b<>'2',并且查询一条记录。

    insert into T1(a,b,c)
    select '1','2','3' from T1 where a<>'1' or b<>'2'
    

    或者

    insert into T1(a,b,c)
    select '1','2','3' from T1 where not exists
    (select a from T1 where a=1 and b=2)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月19日
  • 已采纳回答 3月11日
  • 创建了问题 3月11日