mybatis xml 批量插入 in查询 模糊like查询 字符串转时间区间查询 ゞ 浴缸里的玫瑰 2022-11-22 12:48 296阅读 0赞 **目录** in 查询: 模糊 like查询: 字符串转时间区间查询: 批量插入: -------------------- ### **in 查询:** ### @Test public void inSelect() { List<Student> list = new ArrayList<>(); Student student = new Student(); student.setName("小王"); Student student1 = new Student(); student1.setName("老王"); list.add(student); list.add(student1); List<Student> resultList = studentMapper.selectListWithList(list); System.out.println(JSONObject.toJSONString(resultList)); } <!-- in 查询 --> <select id="selectListWithList" resultType="com.example.demo.entity.Student"> select id,name,age,city,update_time updateTime from student where name in <foreach collection="list" index="index" item="list" open="(" close=")" separator=","> #{list.name} </foreach> </select> ### **模糊 like查询:** ### @Test public void likeSelect() { Student student = new Student(); student.setName("王"); List<Student> resultList = studentMapper.selectListWithLike(student); System.out.println(JSONObject.toJSONString(resultList)); } <!-- like 查询 --> <select id="selectListWithLike" resultType="com.example.demo.entity.Student"> select id,name,age,city,update_time updateTime from student <where> <if test="name != null and name !=''"> <!-- Oracle postgresql like 使用 || --> <!-- and name like '%'||#{name}||'%' --> <!-- mysql like 使用 concat 或者 "%"直接连接条件,直接连接 "%" 注意%是使用 "" 包含--> <!--and name like concat('%',#{name},'%')--> and name like "%"#{name}"%" </if> </where> </select> ### **字符串转时间区间查询:** ### @Test public void selectWithTime() { Student student = new Student(); student.setStartTime("2020-09-29 11:10:51"); student.setEndTime("2020-11-02 11:06:41"); List<Student> resultList = studentMapper.selectListWithTime(student); System.out.println(JSONObject.toJSONString(resultList)); } @Test public void selectWithEndTime() { Student student = new Student(); student.setEndTime("2020-11-02 11:06:41"); List<Student> resultList = studentMapper.selectWithEndTime(student); System.out.println(JSONObject.toJSONString(resultList)); } <!-- 时间区间 查询 --> <select id="selectListWithTime" resultType="com.example.demo.entity.Student"> select id,name,age,city,update_time updateTime from student <where> <if test="startTime != null and startTime !='' and endTime != null and endTime !=''"> <!-- oracle string 转时间 to_date --> <!--and update_time between to_date(#{startTime},'yyyy-MM-dd hh24:mi:ss') and to_date(#{endTime},'yyyy-MM-dd hh24:mi:ss')--> <!-- postgresql string 转时间 to_timestamp --> <!-- and update_time between to_timestamp(#{startTime},'yyyy-MM-dd hh24:mi:ss') and to_timestamp(#{endTime},'yyyy-MM-dd hh24:mi:ss')--> <!-- mysql string 转时间 STR_TO_DATE --> and update_time between STR_TO_DATE(#{startTime},'%Y-%m-%d %H:%i:%s') and STR_TO_DATE(#{endTime},'%Y-%m-%d %H:%i:%s') </if> </where> </select> <!-- 时间 查询 --> <select id="selectWithEndTime" resultType="com.cp.entity.Student"> select id,name,age,city,update_time updateTime from student <where> <if test="endTime != null and endTime !=''"> <!-- 大于等于>= >= 小于等于 <= <= --> and update_time <= STR_TO_DATE(#{endTime},'%Y-%m-%d %H:%i:%s') </if> </where> </select> ### **批量插入:** ### @Test public void batchInsert() { List<Student> list = new ArrayList<>(); Student student = new Student(); student.setName("小刘"); student.setCity("广东"); student.setAge(24); Student student1 = new Student(); student1.setName("老刘"); student1.setCity("重庆"); student1.setAge(45); list.add(student); list.add(student1); studentMapper.xmlBatchInsert(list); } <!-- 批量插入 --> <insert id="xmlBatchInsert"> INSERT INTO student(name,age,city) VALUES <foreach collection="list" item="item" index="index" separator=","> (#{item.name}, #{item.age}, #{item.city}) </foreach> </insert> 详见github:[https://github.com/chenping-1993/springmvc-mybatis][https_github.com_chenping-1993_springmvc-mybatis] [https_github.com_chenping-1993_springmvc-mybatis]: https://github.com/chenping-1993/springmvc-mybatis
相关 MyBatis注解实现like模糊查询 问题描述 SpringBoot下使用mybatis注解方式进行模糊查询时发生错误,结果报错:`Parameter index out of range (1 > numb 古城微笑少年丶/ 2024年04月08日 10:52/ 0 赞/ 80 阅读
相关 mybatis模糊查询、区间查询 mybatis的SQL语句,如果要求where条件中某条件介于一个区间段之间,但大于号小于号又是关键字,此时我们可以将其包在CDATA区域中,以时间为例: <!\[CDATA 逃离我推掉我的手/ 2024年04月08日 10:52/ 0 赞/ 76 阅读
相关 mybatis 配置 mapper.xml 中 like 模糊查询含有转义字符串(通配符% 、_)的查询 mysql 的 like 模糊语句中,常见的通配符是 % 和 \_ 。 % :表示任意个或多个字符。可匹配任意类型和长度的字符。 _ :表示任意单个字符。匹配 àì夳堔傛蜴生んèń/ 2023年01月15日 08:06/ 0 赞/ 355 阅读
相关 Mybatis like 模糊查询%使用方法 使用CONCAT函数 <select id="pageQuery" resultType="com.xxx.db.mybatis.entity.User"> 短命女/ 2022年12月21日 00:45/ 0 赞/ 231 阅读
相关 mybatis xml 批量插入 in查询 模糊like查询 字符串转时间区间查询 目录 in 查询: 模糊 like查询: 字符串转时间区间查询: 批量插入: -------------------- in 查询: @T ゞ 浴缸里的玫瑰/ 2022年11月22日 12:48/ 0 赞/ 297 阅读
相关 Mybatis 模糊查询 LIKE 使用方式 不废话,上图: 需要模糊查询的入参数 , loginName: (命名随便起的,为了给大家做个示例) ![20210609162235132.png][] 第一种: 灰太狼/ 2022年10月05日 13:59/ 0 赞/ 433 阅读
相关 mybatis做like模糊查询 1. 参数中直接加入%% param.setUsername("%CD%"); param.setPassword("%11 矫情吗;*/ 2022年08月18日 00:43/ 0 赞/ 316 阅读
相关 mybatis mapper like模糊查询和时间格式搜索 public PageResult<User> getUserList(@Param("condition")SidCustManage condition, Page 旧城等待,/ 2022年07月15日 08:45/ 0 赞/ 224 阅读
相关 mybatis like模糊查询问题 1. 参数中直接加入%% param.setUsername("%CD%"); param.setPassword("%11%"); <sel ╰半夏微凉°/ 2022年05月30日 00:35/ 0 赞/ 349 阅读
还没有评论,来说两句吧...