随笔分类 -  常见sql

工作中遇到的sql
摘要:LambdaQueryWrapperX<UserInfoDO> query = new LambdaQueryWrapperX<>(); if (StrUtil.isNotBlank(reqVO.getKeyWord())) { query.and(x -> x.like(UserInfoDO::g 阅读全文
posted @ 2025-05-30 15:28 红尘沙漏 阅读(71) 评论(0) 推荐(0)
摘要:众所周知sql中条件in的值是不能超过1000个的,而mybatis可以使用动态sql拼接的方式绕开这个限制,网上看了很多例子,我感觉都不太好理解,下面介绍一个超简单的例子。 select * from user_info where 1 = 1 <if test="userList!= null 阅读全文
posted @ 2024-09-12 22:28 红尘沙漏 阅读(1278) 评论(0) 推荐(0)
摘要:解决思路这种解决办法的核心思路就是每次将in的条数限制在1000以内,然后多次查询或者一次多个or条件拼接查询,然后将查询结果进行合并。 解决办法毫无疑问,这里我们需要将超过1000条查询条件的list集合数据进行分割,一种方法是自己手工写分割方法,比较麻烦,不推荐,如果有兴趣可以自己去写写看,建议 阅读全文
posted @ 2024-09-12 22:21 红尘沙漏 阅读(1727) 评论(0) 推荐(0)
摘要:LIKE CONCAT('%',#{queryDTO.name},'%') 阅读全文
posted @ 2024-08-29 12:32 红尘沙漏 阅读(130) 评论(0) 推荐(0)
摘要:原文地址:https://www.cnblogs.com/exmyth/p/5757137.html mybatis 实现批量更新 更新单条记录 1 UPDATE course SET name = 'course1' WHERE id = 'id1'; 更新多条记录的同一个字段为同一个值 1 UP 阅读全文
posted @ 2024-04-18 14:12 红尘沙漏 阅读(70) 评论(0) 推荐(0)
摘要:原文地址:https://blog.csdn.net/weixin_39965283/article/details/111390490 前言 在各种问答社区里谈及 SQL 里的各种 JOIN 之间的区别时,最被广为引用的是 CodeProject 上 C.L. Moffatt 的文章 Visual 阅读全文
posted @ 2023-03-19 12:39 红尘沙漏 阅读(566) 评论(0) 推荐(0)
摘要:一个月的全部日期 SELECT to_char(TRUNC(to_date(to_char(sysdate,'yyyy-mm')||'-01','yyyy-MM-dd'), 'MM') + ROWNUM - 1, 'yyyy-MM-dd') as day FROM dual connect by t 阅读全文
posted @ 2023-03-03 14:09 红尘沙漏 阅读(3063) 评论(0) 推荐(0)
摘要:SELECT CUST_ID FROM IMP_CM_GROUP_CUST_REL where GROUP_ID =#{custGroupId} and cust_id in ( <choose> <when test="type == '01'.toString()"> -- 机构 SELECT 阅读全文
posted @ 2023-02-15 09:43 红尘沙漏 阅读(61) 评论(0) 推荐(0)
摘要:MYBATIS SQL一对多查询 返回对象或LIST中包含子LIST 标签: mybatis 数据库对应关系如下图 : 两个表的关联关系 是 store_code 和 sku_code 同时相等 要求查询结果(图一) "list": [ { "storeCode": "0001", "skuCode 阅读全文
posted @ 2022-05-11 09:09 红尘沙漏 阅读(3197) 评论(0) 推荐(0)
摘要:<update id="updateUser" parameterType="com.dy.entity.User"> update user <set> <if test="name != null">name = #{name},</if> <if test="password != null" 阅读全文
posted @ 2022-03-07 09:20 红尘沙漏 阅读(499) 评论(1) 推荐(0)
摘要:@MyBatisDao public interface DeskDao extends CrudDao<Desk> { /** * 统计诊室的等待人数、已接诊人数 * @param sql * @return List<Desk> */ List<Desk> findListBySql(@Para 阅读全文
posted @ 2022-03-02 15:08 红尘沙漏 阅读(239) 评论(1) 推荐(0)
摘要:select * from my_product where product_type = 1 and status = 36 and TIMESTAMPDIFF(DAY, NOW(), date_add(eff_time, interval 30 day)) = #{days,jdbcType=I 阅读全文
posted @ 2021-12-17 10:52 红尘沙漏 阅读(101) 评论(0) 推荐(0)
摘要:<select id="selctBeanInfo" resultType="com.cn.UserInfo" parameterType="java.lang.Integer"> select * from user_info where status = 0 and TIMESTAMPDIFF( 阅读全文
posted @ 2021-09-30 08:45 红尘沙漏 阅读(372) 评论(0) 推荐(0)
摘要:mysql插入数据后返回自增ID的方法 mysql在插入一条数据后,如何能获得到这个自增id的值呢?即怎么获取设置为自增主键的id(AUTO_INCREMENT)?? 方法一:是使用last_insert_id mysql> SELECT LAST_INSERT_ID(); 产生的自增ID每次连接后 阅读全文
posted @ 2021-06-16 08:29 红尘沙漏 阅读(1668) 评论(0) 推荐(0)
摘要:不推荐方法:INSERT INTO tim_test(`name`)values("tim");SELECT max(id) from tim_test; 首先性能较低,且在高并发情况下,返回的值是不正确的。 推荐方法:SELECT LAST_INSERT_ID(); 因为LAST_INSERT_I 阅读全文
posted @ 2021-06-16 08:25 红尘沙漏 阅读(3118) 评论(0) 推荐(0)
摘要:查询数据库中的重复数据——MySQL数据库 1、建表语句 DROP TABLE IF EXISTS `t_people`; CREATE TABLE `t_people` ( `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, `people_no` 阅读全文
posted @ 2021-06-15 23:19 红尘沙漏 阅读(1305) 评论(0) 推荐(0)
摘要:select * from user_customer_month where create_time=DATE_FORMAT(#{date}, '%Y-%m') 阅读全文
posted @ 2021-06-11 15:40 红尘沙漏 阅读(432) 评论(0) 推荐(0)
摘要:以下函数为一些常用的最基础的时间函数,不包括DATEADD、DATEFORMAT等函数常用时间函数now(), current_timestamp(); -- 当前日期时间current_date(); -- 当前日期current_time(); -- 当前时间date('yyyy-mm-dd h 阅读全文
posted @ 2021-06-09 16:08 红尘沙漏 阅读(2461) 评论(0) 推荐(0)
摘要:select sum(duration_time) as quantity,account,user_name,dept_name,parent_dept from blade_employee_training_record_detail where tenant_id=#{tenantId} < 阅读全文
posted @ 2021-06-08 13:39 红尘沙漏 阅读(2380) 评论(0) 推荐(0)
摘要:MySQL根据多个字段删除重复数据(保留一条) 在成千上万条数据中,存在着一些相同的记录,该如何用SQL语句来删除掉重复的呢 话不多说直接上代码 DELETE FROM 表名 WHERE S_ID IN ( SELECT S_ID FROM 表名 A, ( SELECT 字段 1, 字段 2 FRO 阅读全文
posted @ 2021-06-07 09:28 红尘沙漏 阅读(1686) 评论(0) 推荐(0)