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. android 相对布局例子代码

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  2. PHP中json_encode()问题

    PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据. 要想不转义,在后面加个参数即可 json_encode($data, JSON_UNESCAPED_UNICODE);  ...

  3. Java课程作业之动手动脑(三)

    1.以下代码为何无法通过编译?哪儿出错了? 在Foo类中已经有了一个Foo的含参构造方法,所以在定义Foo类对象时不能使用new Foo()方法.在Foo类中再写一个无参构造方法,就能编译了. 如果类 ...

  4. tkinter widget

    tkinter messagebox

  5. MySQL配置文件以及服务的开启关闭重启

    linux系统中,配置文件路径一般为/etc/my.cnf [root@host ~]# mysql --help|grep my.cnf                       order of ...

  6. 使用include重用布局

    尽管Android 支持各种小部件,来提供小且可以重用的交互元素,你可能还需要更大的,要求一个专门布局的重用组件.为了高效的重用整个布局,你能使用和标签在当前的布局中嵌入别的布局. 重用布局功能特别强 ...

  7. kubernetes国内镜像拉取

    因国内访问不到goole服务器,只能拉取国内的镜像,这里以阿里云为例. 安装minikube时报failed to pull image "k8s.gcr.io/kube-apiserver ...

  8. mingw编译ffmpeg 错误:Unknown option "--enable-memalign-hack"

    据说mingw编译ffmpeg的话需要添加 --enable-memalign-hack 开关 但如果源码是最新版比如:ffmpeg4.0.2 的话 好像已经禁用了该开关. “我可以确认新的ffmpe ...

  9. oracle数据库关闭了打开数据库

    一.找到sqlplus

  10. windows7 安装虚拟机,xsheel连接不上的问题,记录一下

    安装了好久,一直连接不上...,原来是网络没开..重新安装设置就可以了!!!记录一下