百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

FIND_IN_SET 及IN 处理逗号间隔的字符串参数

wptr33 2025-01-10 17:35 22 浏览

最近做项目遇到个类似收藏的需求(不能被取消)涉及两个表 用户表sys_user 商品表goods,项目已经上线是二次开发 如果添加中间表就需要维护旧数据(不考虑) 表结构类似如下

一、

1.首先想到的是用 IN()

SELECT good_name FROM goods WHERE id IN (1,2,3,4)

2.使用GROUP_CONCAT()函数拼接结果

持久层用的mybatis 将字符串‘1,2,3,4’ 转化成(1,2,3,4)代码如下

最后

将XXXX替换成 上述代码结果就变成

注意红框 看到这我就有一种不好的预感

mybatis在使用foreach的时候最关键的也是最容易出错的就是collection属性

看了mybatis文档关于collection的说明 我就把上述代码给干掉了 -_-! (想知道结果,感兴趣的 可以试下 ,因为我也好奇能不能行得通)

二、

没错 我还有其他方法 就是FIND_IN_SET(param1, param2)函数

1 . FIND_IN_SET的定义可以看下方链接

https://www.cnblogs.com/mytzq/p/7090197.html

2. 当param1 是一个表的字段 类似IN(集合)

直接上结果

持久层代码中避免了感人的 foreach

让自己感动

相关推荐

flarum安装使用教程(flm安装教程安卓)

Flarum是一款现代化的、简洁美观的论坛软件,以下是关于它的环境安装:安装搭建基础环境:...

从abc起步学做网站(4)(从abc开始学英语用什么软件)

上一次我们做了一个大多数网站使用的模板,带有顶部、左侧导航、右侧主内容、底部等板块。现在我们把它逐步扩展成一个论坛。一个论坛的基本功能有注册,登陆,发帖,回帖,看帖,删帖等,我们一步步来做。首先大多数...

了解webshell变形的一些思路(webxshell)

请遵守法律法规,文章旨在提高安全软件的应变策略,严禁非法使用,后果自负。前言在攻防场景下,黑客常常在找到某个上传接口,第一步肯定是先测试后缀是否有限制,第二步则是测试上传的文件是否能解析,最后便确认即...

MySQL8安装 八: 使用phpMyadmin客户端

MySQL8安装一:源码安装...

PHP基本的语法、注释:让你的代码充满神秘色彩

PHP魔法咒语:让你的代码充满神秘色彩(带你进入PHP的魔法世界)一、笔记:基本的PHP语法PHP是一种超级强大的脚本语言,专为Web开发而设计。要想成为真正的PHP魔法师,首先需要掌握一些基本的语法...

PHP——bc函数及其应用详解(php bcmul)

bcadd——两个任意精度数字的加法计算(PHP4,PHP5,PHP7,PHP8)...

从零学习php之php语法——课程1(php零基础自学)

以后将会每天更新一篇电脑编程教程有需要的朋友记得订阅转发哟怎么学习php?对于想学php还没入门的朋友很多都在纠结怎么开始第一步。我很了解php初学者的心理,因为我也是从那个阶段过来的,也是自学。那...

全新版Jetpack进阶提升,系统性落地短视频App|超清完结无秘

全新版Jetpack进阶提升,系统性落地短视频App|超清完结无秘来百度APP畅享高清图片...

Reactive系统的反压(什么是反压)

原文BackpressureinReactiveSystemshttps://foojay.io/today/backpressure-in-reactive-systems/?spm=ata...

Kotlin设计模式:Flyweight(享元)模式

享元模式的目的...

如何使用 Kotlin 在 Android 应用程序中使用 DataStore 首选项

在本教程中,我将向您展示如何使用数据存储首选项在Android应用程序中本地保存数据,而不是使用共享首选项的旧方法。我看到很多人不知道如何使用DataStore,他们认为这太难了,所以在这篇文章...

Spring Native 中文文档(springdatajpa中文文档)

https://docs.spring.io/spring-native/docs/current/reference/htmlsingle/#getting-started-buildpacks...

详解Android官推Kotlin-First的图片加载库

前言Coil是一个非常年轻的图片加载库,在2020年10月22日才发布了1.0.0版本,但却受到了Android官方的推广,在AndroidDevelopersBackst...

Spring Boot通过@EnableCaching注解开启全局服务缓存功能!

Caching缓存缓存在现代应用中无处不在,它为服务的高可用提供了很大的帮助。Spring框架提供了对缓存的支持。SpringBoot通过@EnableCaching注解开启全局服务缓存功能。对于某...

Spring好番特辑:麦咭开启宠娃模式!把娃春日宠上天!

...