第一次在项目中使用left join right join记录。+myBatis selective方法(sql)使用加深理解 记录。

=====①以前很少见。对left join right join存在的意义 印象不是很深刻。

第一次在项目中使用left join right join记录。+myBatis selective方法(sql)使用加深理解 记录。_第1张图片

===right join尝试。【是用哪个,试试就行了】

第一次在项目中使用left join right join记录。+myBatis selective方法(sql)使用加深理解 记录。_第2张图片

===left join 效果ok

第一次在项目中使用left join right join记录。+myBatis selective方法(sql)使用加深理解 记录。_第3张图片

====实现:


    

====效果:

第一次在项目中使用left join right join记录。+myBatis selective方法(sql)使用加深理解 记录。_第4张图片


=====②额外:selective方法的使用。加深。

 
        update res_ad_slot
        
            
                slot_name = #{slotName,jdbcType=VARCHAR},
            
            
                res_media_id = #{resMediaId,jdbcType=INTEGER},
            

            /*  对于非必填字段。不要加if判断就行了。
            必须要用selective方法。可以避免很多 数据丢失导致错误可能性。 */
                media_platform_id = #{mediaPlatformId,jdbcType=TINYINT},

            
                slot_type = #{slotType,jdbcType=TINYINT},
            
            
                channel_id = #{channelId,jdbcType=INTEGER},
            
            
                terminal = #{terminal,jdbcType=TINYINT},
            
            
                status = #{status,jdbcType=TINYINT},
            
            
                exposure_amount = #{exposureAmount,jdbcType=INTEGER},
            
            
                click_amount = #{clickAmount,jdbcType=INTEGER},
            
            gmt_modified =NOW(),
            
                standard = #{standard,jdbcType=LONGVARCHAR},
            
            
                remark = #{remark,jdbcType=LONGVARCHAR},
            
            
                slot_json = #{slotJson,jdbcType=LONGVARCHAR},
            
        
        where id = #{id,jdbcType=INTEGER}
    


你可能感兴趣的:(SQL)