mybatis的特殊情景语句操作

2024-04-21 07:32

本文主要是介绍mybatis的特殊情景语句操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、批量插入或者更新:减少与数据库交互

<insert id="betchInsertMallItemPrice" parameterType="java.util.List">  <![CDATA[ insert into mall_item_price (mall_item_id, price,discout_price,limit_num,level,create_user_id,type,status,gmt_create,gmt_modify,attribute,comm_only_key) values ]]><foreach collection="list" item="mallItemPrice" index="index" separator=","> <![CDATA[ (#{mallItemPrice.mallItemId}, #{mallItemPrice.price}, #{mallItemPrice.discoutPrice}, #{mallItemPrice.limitNum}, #{mallItemPrice.level}, #{mallItemPrice.createUserId}, #{mallItemPrice.type}, #{mallItemPrice.status}, #{mallItemPrice.gmtCreate},#{mallItemPrice.gmtModify}, #{mallItemPrice.attribute}, #{mallItemPrice.commOnlyKey}) ]]></foreach><selectKey resultType="long" keyProperty="id">SELECT @@IDENTITY AS id</selectKey></insert>


二、批量更新以及插入:

<insert id="replaceMallItemPrice" parameterType="java.util.List">  <![CDATA[ replace into mall_item_price (id,mall_item_id, price,discout_price,limit_num,level,create_user_id,type,status,gmt_create,gmt_modify,attribute,comm_only_key) values ]]><foreach collection="list" item="mallItemPrice" index="index" separator=","> <![CDATA[ (#{mallItemPrice.id},#{mallItemPrice.mallItemId}, #{mallItemPrice.price}, #{mallItemPrice.discoutPrice}, #{mallItemPrice.limitNum}, #{mallItemPrice.level}, #{mallItemPrice.createUserId}, #{mallItemPrice.type}, #{mallItemPrice.status}, #{mallItemPrice.gmtCreate},#{mallItemPrice.gmtModify}, #{mallItemPrice.attribute}, #{mallItemPrice.commOnlyKey}) ]]></foreach><selectKey resultType="int" keyProperty="id">SELECT @@IDENTITY AS id</selectKey></insert>

三、数据库存   1,2,3,13    判断1是否在其中

<select id="getMallActivityListByLevel" resultType="com.mall.pojo.MallActivity"  parameterType="java.lang.Integer">select *from mall_activity where status = 1 and comm_only_key = #{1} and find_in_set(#{0},activity_rull) order by id DESC</select>

此处用的是find_in_set()函数



这篇关于mybatis的特殊情景语句操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/922502

相关文章

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Spring Boot结成MyBatis-Plus最全配置指南

《SpringBoot结成MyBatis-Plus最全配置指南》本文主要介绍了SpringBoot结成MyBatis-Plus最全配置指南,包括依赖引入、配置数据源、Mapper扫描、基本CRUD操... 目录前言详细操作一.创建项目并引入相关依赖二.配置数据源信息三.编写相关代码查zsRArly询数据库数

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

Spring Boot 整合 MyBatis 连接数据库及常见问题

《SpringBoot整合MyBatis连接数据库及常见问题》MyBatis是一个优秀的持久层框架,支持定制化SQL、存储过程以及高级映射,下面详细介绍如何在SpringBoot项目中整合My... 目录一、基本配置1. 添加依赖2. 配置数据库连接二、项目结构三、核心组件实现(示例)1. 实体类2. Ma

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage