MySQL-- 将查询结果一列数据转成一行数据 & 拼接函数

499 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

前言

在写SQL时,经常会筛选出一列符合条件的id编号,这些编号又会作为另一个SQL的筛选条件,每次都是手动输入这些编号,那么有没有一种方法能将这些id拼接成一个字符串?

一.GROUP_CONCAT

1.从医生表查出符合条件的id

select id from doctor limit 5;

在这里插入图片描述

2.将这些id拼接成字符串

select group_concat(id,'') as id from (select id from doctor limit 5) a ;

在这里插入图片描述

二.CONCAT

select concat(id,',',name) from doctor order by id limit 3

在这里插入图片描述

三.CONCAT_WS

select concat_ws(';',id,name) from doctor order by id limit 3

在这里插入图片描述