带条件且带主键更新的语句
根据某个条件是否成功而插入表,同时如果存在主键冲突则更新数据字段。
insert into db_name.db_table(ent_id,user_id,user_role,dept_name,sub_dept_name,create_datetime)
select(283, 1, 3,'', '', '2018-01-01 12:13:14')
from DUAL
where (select count(*) from db_name.db_table where ent_id=283)<22
ON DUPLICATE KEY
UPDATE status=1, user_role=3,dept_name='',sub_dept_name='';
insert into [数据库].[数据表](数据字段)
select(具体要插入的数据)
from dual
where [条件语句(支持子查询)]
on duplicate key
update [数据字段=数据值,...]