屏蔽阿里云网站,自助商城网站建设,新浪云 安装wordpress,电商的推广主要是做什么的1、在实际应用场景中#xff0c;我们会用到#xff1a;如果这条数据在表中#xff0c;就更新数据#xff1b;如果不存在这条数据#xff0c;就插入这条数据。在oracle中#xff0c;可以使用merge into实现#xff0c;在mysql中可以使用ON DUPLICATE KEY UPDATE#xff…1、在实际应用场景中我们会用到如果这条数据在表中就更新数据如果不存在这条数据就插入这条数据。在oracle中可以使用merge into实现在mysql中可以使用ON DUPLICATE KEY UPDATE这里只介绍oracle中的merge into实现方法sql语法如下merge into testtable t using dual on (t.id 1)when not matched then insert (id,a,b) values (1,2,1)when matched then update set b b1;select * from testtable;(如果testtable是空表执行上述语句之后如下)id A B---------------1 2 1select * from testtable;(如果再执行一次merge into,testtable结果)id A B---------------1 2 2解释using dual on (...)是一种固定写法也可以写成 using (select 1 from dual) on (...) , 表名dual也可以写成其他的名字。on(...)里面是条件可以写一个条件也可以用and连多个条件。2、顺便介绍一下mybatis中怎么使用merge into直接上代码代码使用的是动态sql。merge into staff_evaluation tusing dual on (t.login_id #{loginId,jdbcTypeVARCHAR})when not matched then insertUSER_ID,LOGIN_ID,USER_NAME,COMPLEX_SCORE,MOBILE_SERVICE_SCORE,BROADBAND_SCORE,KEEP_SCORE,STATE,EVALUATE_TEXT,BEGIN_TIME,END_TIME,EVALUATE_PERSON,#{userId,jdbcTypeVARCHAR},#{loginId,jdbcTypeVARCHAR},#{userName,jdbcTypeVARCHAR},#{complexScore,jdbcTypeVARCHAR},#{mobileServiceScore,jdbcTypeVARCHAR},#{broadbandScore,jdbcTypeVARCHAR},#{keepScore,jdbcTypeVARCHAR},#{state,jdbcTypeVARCHAR},#{evaluateText,jdbcTypeVARCHAR},#{beginTime,jdbcTypeVARCHAR},#{endTime,jdbcTypeVARCHAR},#{evaluatePerson,jdbcTypeVARCHAR},when matched then updatet.COMPLEX_SCORE #{complexScore,jdbcTypeVARCHAR},t.MOBILE_SERVICE_SCORE #{mobileServiceScore,jdbcTypeVARCHAR},t.BROADBAND_SCORE #{broadbandScore,jdbcTypeVARCHAR},t.KEEP_SCORE #{keepScore,jdbcTypeVARCHAR},t.EVALUATE_TEXT #{evaluateText,jdbcTypeVARCHAR},t.BEGIN_TIME #{beginTime,jdbcTypeVARCHAR},t.END_TIME #{endTime,jdbcTypeVARCHAR},t.EVALUATE_PERSON #{evaluatePerson,jdbcTypeVARCHAR},where t.LOGIN_ID #{loginId,jdbcTypeVARCHAR}注意一定要用update标签。