我要执行这样一句sql:insert into tab1 (id,field1,field2) values($id,a1,b1 )$id是自动累加的。我现在想如果(a1,b1)在tab1种已经存在,我就不插了,用sql语句怎么完成这个操作呢?谢谢
解决方案 »
- 请教把多个查询参数整合进一句SQL语句的思路或者方法~~~~~~~~~
- mysql 查询问题
- mysql 这样的语句怎么写? '百色市' like '%'+name+'%'
- 请教数据是汉字 ,数据类型这么设值不对 !应该怎么设置呢 ?
- pgsql--------------------------------批处理
- msql 存储过程有上限吗?
- 出鬼了~~~~~ 去掉了LIMIT 0 ,1 就可以了,为什么一次非得不能有LIMIT 0, 1?
- mysql 连接。
- mysql + ibatis 分页中 limit后有运算式如何解决
- 设置外键问题
- mysqldump备份到桌面
- mysql show processlist如何判断哪个sql语句比较占时间?
方法二 insert into tab1 (id,field1,field2)
select $id,a1,b1 from dual where not exists (select 1 from tab1 where field1=a1 and field2=b1)
END IF
->drop procedure if exists pro_tab1;
->delimiter //
->create procedure pro_tab1(in str1 varchar(100),in str2 varchar(100))
->begin
->set @n=0;
->select count(*) into @n from tab1 where field1=str1 and field2=str2;
->if @n=0 then
->insert into tab1(field1,field2) values(str1,str2);
->end if;
->end//
->delimiter ;
->call pro_tab1('a','b');
影响的数据栏: 1
时间: 0.000ms
->call pro_tab1('a','b');
影响的数据栏: 0
时间: 0.000ms