自学内容网 自学内容网

MySql的concat和group_concat的区别

1、concatgroup_concat都是用在sql语句中做拼接使用的,但是两者使用的方式不尽相同,
concat是针对一行数据多个字段拼接,而group_concat是针对多行数据拼接,且group_concat自动生成逗号。
concat示例Sql,把rule_id 和module_id拼接起来,中间用-隔开

select concat(rule_id,'-',module_id)  from t_engine_module_rule_relation where module_id = 1

group_concatconcat示例Sql,把多行数据拼接起来,group_concatconcat自带,号隔开
不适用group_concatconcat效果是这样的

select module_id  from t_engine_module_rule_relation

使用group_concatconcat效果

select group_concat(module_id)  from t_engine_module_rule_relation

concat和group_concat组合使用

select GROUP_CONCAT(DISTINCT CONCAT(c.company_name, '-', d.dept_name) SEPARATOR ',') AS company_dept_names
from sys_company c
         left join sys_dept d on c.company_id = d.company_id


原文地址:https://blog.csdn.net/2301_80488214/article/details/140399057

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!