SELECT
	`w`.`id` AS `id`,
	`w`.`phone` AS `phone`,
	`w`.`belong_id` AS `belong_id`,
	`w`.`name` AS `name`,
	`w`.`password` AS `password`,
	`w`.`email` AS `email`,
	`w`.`qq` AS `qq`,
	`w`.`status_id` AS `status_id`,
	`w`.`level_id` AS `level_id`,
	`w`.`created_time` AS `created_time`,
	`l`.`name` AS `lname`,
	`s`.`status_name` AS `status_name`,
	group_concat(
		DISTINCT cast(
			`p`.`profession_code` AS CHAR charset utf8
		) SEPARATOR ','
	) AS `profession_code`,
	group_concat(
		DISTINCT `p`.`profession_name` SEPARATOR ','
	) AS `profession_name`,
	group_concat(
		DISTINCT `r`.`city_code` SEPARATOR ','
	) AS `city_code`,
	group_concat(
		DISTINCT `r`.`city_name` SEPARATOR ','
	) AS `city_name`,
	group_concat(
		DISTINCT `r`.`county_code` SEPARATOR ','
	) AS `county_code`,
	group_concat(
		DISTINCT `r`.`county_name` SEPARATOR ','
	) AS `county_name`,
	group_concat(
		DISTINCT `r`.`province_code` SEPARATOR ','
	) AS `province_code`,
	group_concat(
		DISTINCT `r`.`province_name` SEPARATOR ','
	) AS `province_name`
FROM
	`worker` `w`
LEFT JOIN `worker_level` `l` ON `w`.`level_id` = `l`.`id`
LEFT JOIN `worker_status` `s` ON `w`.`status_id` = `s`.`status_id`
LEFT JOIN `worker_profession` `p` ON `w`.`id` = `p`.`worker_id`
LEFT JOIN `worker_region` `r` ON `w`.`id` = `r`.`worker_id`
GROUP BY
	`w`.`id`

  GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成。

  distinct来返回去除重复的值

 SEPARATOR定义分隔符,GROUP_CONCAT()函数默认是以逗号符号分割
  AS 重命名

结果:
洁具,灯具

33,22

潍坊市,开封市

333,222

安丘市,小开市

3,2 山东省

mysql 多行合并一行的更多相关文章

  1. mysql 多行合并一列

    mysql  多行合并一列 使用的函数为: GROUP_CONCAT(exp) 其中exp 的参数类似如下: (field order  by field   desc  separator ';') ...

  2. SQL实现多行合并一行 .

    ORACLE纯SQL实现多行合并一行[转] 项目中遇到一个需求,需要将多行合并为一行.表结构如下:NAME                            Null           Type ...

  3. ORACLE纯SQL实现多行合并一行

    项目中遇到一个需求,需要将多行合并为一行.表结构如下:NAME                            Null           Type---------------------- ...

  4. MYSQL多行合并成一行多列

    ), VALUE )) INSERT INTO # VALUES (,,'), (,,'), (,,'), (,,'), (,,'), (,,'), (,,') SELECT code,MIN(nam ...

  5. Sql:多行合并一行以及多条数据取时间最早的那条

    有两个导数据的需求,1.一张表里面每一个订单号可能对应多条数据,每个单号返回时间最早的那条. 2.根据条件查询某个字段并按照逗号,合并在一起. 表类似结构如下: 第一条sql:select c.Id, ...

  6. 【不积跬步,无以致千里】mysql 多行合并函数

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  7. Oracle 多行合并一行 方法

    假如有如下表,其中各个i值对应的行数是不定的 SQL> select * from t; I A          D ---------- ---------- --------------- ...

  8. oracle多行合并一行

    以上图为例 执行SQL语句: select d.group_id,to_char(wm_concat(d.tag)) from Imglib_Group_Tag d where d.group_id= ...

  9. SQL 多行合并一行

    select stuff((select ',' + CONVERT(VARCHAR(50),id)+'' from tab_menu  group by id for xml  path('')), ...

随机推荐

  1. spring security demo

    直接上代码. 这个类似于配置一个shiro.xml redis.xml boot 里面xml用注解取代. 启动类 验证启用: 退出: end. spring 官网 start.spring.io

  2. oracle 12c ins-30131 执行安装程序验证所需的初始设置失败

  3. windows清除访问共享文件夹的登陆信息

    https://jingyan.baidu.com/article/c843ea0b70797e77931e4a96.html 当在命令提示窗口输入net use命令时,会显示本机缓存的共享登录信息, ...

  4. python __class__属性

    >>> class a(object): pass >>> o=a() >>> dir(o) ['__class__', '__delattr__ ...

  5. idea 安装三方插件的方法

    <一>在线安装 1,File -> Setting -> Plugins, 大红框内是已经安装的插件,可以搜索 2, 点击上图小红框内的按钮, 如下,搜索自己想要的插件,选中, ...

  6. springboot与mybatis相结合

    1.异常 发生受察时异常提交请求发生运行时异常 回滚 2.yml配置 server: port: 8888 # 配置mybatis mybatis: mapper-locations: classpa ...

  7. 使用spring validation完成数据后端校验

    前言 数据的校验是交互式网站一个不可或缺的功能,前端的js校验可以涵盖大部分的校验职责,如用户名唯一性,生日格式,邮箱格式校验等等常用的校验.但是为了避免用户绕过浏览器,使用http工具直接向后端请求 ...

  8. English-新概念学习

    English-英语字母发音全攻略.pdf English-新概念第一册笔记.rar English-新概念第二册笔记.rar English-新概念第三册笔记.rar English-英语训练用书. ...

  9. 容器viewController添加或者删除子viewController

    假设有一个viewControllerA,我们想在viewControllerA中添加viewControllerB,需要执行以下方法: [viewControllerA addChildViewCo ...

  10. EventBus 源码学习

    打开一看,原来相关代码并不多,下面看下细节 主要方法也就是注册,取消注册和发送事件,可以看到两个主要的变量就是subscribers和dispatcher public void register(O ...