in function ‘int main()’_FIND_IN_SET 及IN 处理逗号间隔的字符串参数
最近做项目遇到个类似收藏的需求(不能被取消)涉及两个表 用户表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
让自己感动
in function ‘int main()’_FIND_IN_SET 及IN 处理逗号间隔的字符串参数相关推荐
- shell foreach 拼接字符串_FIND_IN_SET 及IN 处理逗号间隔的字符串参数
最近做项目遇到个类似收藏的需求(不能被取消)涉及两个表 用户表sys_user 商品表goods,项目已经上线是二次开发 如果添加中间表就需要维护旧数据(不考虑) 表结构类似如下 一. 1.首先想到的 ...
- in function ‘int main()’_如果 main 函数的末尾没有 return 语句将会有什么影响
背景简介 本文是前段在知乎回答的一个问题,觉得蛮重要的,重新编撰发布如下. 原问题为: "c语言中,如果main函数的末尾没有return语句将会有什么影响?": 我是准大一,学计 ...
- c语言中entern int x y,关于extern和int main()的结构有关问题
关于extern和int main()的结构问题 本帖最后由 hashcat 于 2015-09-20 12:34:50 编辑 这是c实现md5加密的代码,报错部分是两处extern,其实也就是两处e ...
- main.c: In function ‘hello’: main.c:3:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ bef
具体错误: main.c: In function 'hello': main.c:3:1: error: expected '=', ',', ';', 'asm' or 'attribute' b ...
- 学习指针后对int main(int argc, char *argv[]),“()“内部参数的详解(初学者不要怕,浅浅学过指针的就可以看懂)
大二时,出学51单片机时,经常写程序然后烧录程序,免不了去借鉴一些大佬的代码,但有些代码的主函数在当时的我看起来很奇怪,因为那时学的少,所以时常不敢于借鉴.例如int main(int argc,ch ...
- int main()与void main()区别?
在学习C语言的过程中,会习惯性的将int main()写为void main(),两者有什么区别? 1.int main() 在 C99 标准中,有两种正确的使用方式: int main( void ...
- C语言-int main()与void main()
你有没有想过 int main() void main() 怎么选? 前言: // C 语言中的函数定义的一般形式如下return_type function_name( parameter lis ...
- int main(int argc,char *argv[]),主函数的参数问题
主函数的参数 在VC++中,我们有时候看到一些程序的主函数是带有参数的,虽然我们经常用到VC++但是对主函数的参数并不是很理解: int main(int argc,char *argv[]) 对于里 ...
- 关于int main( int argc, char* argv[] ) 中arg和argv参数理解
在示例程序中经常可以看到argc和argv这两个参数 ,在调试代码过程中遇到main函数为int main( int argc, char* argv[] ) 这种类型时往往会报错,或者是运行起来了但 ...
最新文章
- 人工智能技术给教育行业带来哪些主要影响?
- python程序实例源代码-Python 神经网络手写识别实例源码
- YII CRUD 例子
- php自然排序法的比较过程,PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)...
- 串的模式匹配(BF算法)
- ie6/ie7/firefox/dispaly:inline-block:兼容性
- OMG,学它!javaweb网上购物系统
- python运维和开发实战-高级篇
- 用HTML5编写日历,js编写当天简单日历效果【实现代码】_javascript技巧
- 计算机专业英语 9次作业合集 从第九次到第一次
- 修复office安装提示1706
- 为什么线程崩溃不会导致 JVM 崩溃
- asp、php、asp.net、jsp介绍及优缺点比较
- 即将到来的Xcode8 都更新了什么?
- 程序员主流代码编辑器,你用过多少款?
- Neutron OVS-DVR
- CSMA/CD协议分析
- BC70 空心三角形图案
- 给静态图片添加动态效果
- pandas合并操作
热门文章
- Docker终失C位,开源少年缘何黑化
- Python 手把手实现远程控制桌面
- 华为定义5.5G网络;阿里巴巴美股投资者发起集体诉讼;Kaldi核心算法K2 0.1版本发布|极客头条
- 输入网址按回车,到底发生了什么?
- 阿里辟谣:不会高薪聘请黑阿里网站的人;苹果欲用 iPhone 替代身份证和护照;Python 3.9.0b4 发布| 极客头条
- 全网最详细 TCP 参数讲解,再也不用担心没有面试机会了......
- 京东:618 期间遭「黑公关」恶意抹黑;Adobe 回应“杀死Flash”;Bootstrap 5.0 Alpha 发布 |...
- 微信改号?我用 Python 发现了六大隐藏秘密......
- 李彦宏:百度今年全员涨薪,比去年还多;谷歌暂停Chrome浏览器更新;Eclipse 4.15发布 | 极客头条...
- 一家独大的亚马逊,让人恐慌?