mysql concat换行_Mysql 的 GROUP_CONCAT() 函数拼接串
发布日期:2021-06-24 17:00:52 浏览次数:2 分类:技术文章

本文共 992 字,大约阅读时间需要 3 分钟。

SELECT GROUP_CONCAT( ut.id_card ORDER BY ut.id_card DESC SEPARATOR ',' )   FROM `edu_user_train` ut where ut.id in(614,615);

输出结果:

500231199108181861,371324198450304515

使用场景:返回的是纯数字 配合in 查询

例:

SELECT u.name FROM `edu_user` u WHERE u.id_card IN (500231199108181861,371324198450304515);

SELECT GROUP_CONCAT('"',ut.id_card,'"') FROM `edu_user_train` ut where ut.id in(614,615);

输出结果:

"500231199108133881","371325198706304515"

使用场景:返回的是字符串(因为身份证中存在有"X"的情况) 配合in 查询

例:

SELECT u.name FROM `edu_user` u WHERE u.id_card IN ("500231199108133881","371325198706304515");

SELECT CONCAT('"',ut.id_card,'"') FROM `edu_user_train` ut where ut.id in(614,615);

输出结果:

"500231199133133881"

"371325198706454515"

这种情况相对来说就用的比较少了。

这部分以上面的区别在于加了GROUP 后 , 再得到一个结果后会进行换行。

SELECT GROUP_CONCAT( u. NAME ORDER BY u. NAME DESC SEPARATOR "," ) AS userName FROM `edu_user` u WHERE u.id_card IN ( SELECT ut.id_card  FROM `edu_user_train` ut where ut.id in(614,615,939));

多个数据, 进行子查询。

欢迎补充指正,这是本人在实践中所得的记录,详细用法及专业解释请看Mysql 的API。

转载地址:https://blog.csdn.net/weixin_33983809/article/details/113583830 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:mos login mysql_【翻译自mos文章】改变数据库用户sysman(该用户是DBControlRepo
下一篇:mysql安装退出_mysql安装登陆退出

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月07日 19时13分03秒