mysql查询结果多列拼接查询

mysql查询结果多列拼接查询,主要场景是,列表中其中一列涉及另外一张表的多条数据,但是我只需要多条数据中的其中某一列(主子表场景)

关键字:GROUP_CONCAT

sql语句如下:

SELECT
            r.id,b.NAME AS group_name,GROUP_CONCAT( a.`name` ) province_name
            FROM config_rule AS r
            LEFT JOIN group AS g ON ( r.svg_id = g.id )
            LEFT JOIN config_rule_detail AS rd ON ( r.id = rd.chat_config_rule_id )
            LEFT JOIN area AS a ON ( rd.province_id = a.id )
            WHERE r.company_id = 1 AND r.delete_flag = ‘N‘ AND rd.delete_flag = ‘N‘ and r.chat_mongo_id = ‘123456‘

参考地址:https://blog.csdn.net/qq_35548288/article/details/81771978

原文地址:https://www.cnblogs.com/youcong/p/12275253.html

时间: 2024-10-09 15:15:31

mysql查询结果多列拼接查询的相关文章

MySql中根据一列状态值查询状态的个数

最近搞报表的项目,要写数据库sql语句,根据状态值查询状态的个数,这个开始难为到我了,不过已经有解决办法了. 在数据库表中有一个字段是状态(zt),这里面有1-7这7个状态,现在查询每个状态的数量,并且显示在一张表中,正常情况下查状态是: SELECT COUNT(*) draft  FROM `it_project_info` WHERE `it_project_info`.item_status`='1'; SELECT COUNT(*) checks FROM `it_project_in

关于EFCore对Mysql的支持 多字段拼接查询

本文是讨论EFCore对Mysql的支持问题 本文中测试使用的ORM为MySql.Data.EntityFrameworkCore 6.10.6版本 在系统中有一张表:crm.contacts 中包含了first_name和last_name两个字段 通常来说需要查询的时候 需要将这两个字段连接一起进行模糊查询 Mysql支持的sql语句为 select * from `crm.contacts` where concat(first_name, last_name)  like concat(

mysql GROUP_CONCAT 查询某个字段(查询结果默认逗号拼接)

Mysql 的 GROUP_CONCAT 函数默认将查询的结果用逗号拼接并返回一个字符串,如:李四,long,张三 1. 常用方式 select GROUP_CONCAT(user_name) userName from user where type = 1 2. GROUP_CONCAT 结合 IN 的使用 -- 查询指定id对应的name值,返回结果为 name7,name4,name2,name5    order by field(org_id,0,7,4,2,5)表示按照给定字段的顺

(七)MySQL数据操作DQL:单表查询

(1)单表查询 1)环境准备 mysql> CREATE TABLE company.employee5( id int primary key AUTO_INCREMENT not null, name varchar(30) not null, sex enum('male','female') default 'male' not null, hire_date date not null, post varchar(50) not null, job_description varcha

MySQL的约束、多表查询、子查询

一.约束之主键约束 约束:约束是添加在列上的,用来约束列的. 1.主键约束(唯一标识):非空.唯一.被引用 当表的某一列被指定为主键后,该类就不能为空,不能有重复值出现 创建表时指定主键的两种方式: CREATE TABLE stu( sid CHAR(6) PRIMARY KEY, sname VARCHAR(20), age INT, sex VARCHEAR(10) ); CREATE TABLE stu( sid CHAR(6) , sname VARCHAR(20), age INT,

Linux命令:MySQL系列之五--SELECT单表查询、多表查询升级及删除,插入

SELECT:查询 SELECT select-list FROM tb WHERE qualification  根据标准qualification查找对应的行 查询语句类型:  qualification条件  field领域  distinct独特的 简单查询: 多表查询: 子查询: SELECT * FROM tb_name: 查询tb_name表的所有信息 SELECT field1,field2 FROM tb_name: 投影显示所设定的领域条目(field),一个field就是一

《高性能MySQL》读书笔记--查询性能优化

对于高性能数据库操作,只靠设计最优的库表结构.建立最好的索引是不够的,还需要合理的设计查询.如果查询写得很糟糕,即使库表结构再合理.索引再合适,也无法实现高性能.查询优化.索引优化.库表结构优化需要齐头并进,一个不落. 6.1 为什么查询速度会慢 通常来说,查询的生命周期大致可以按照顺序来看:从客户端>>服务器>>在服务器上进行解析>>生成执行计划>>执行>>返回结果给客户端.其中执行可以认为是整个生命周期中最重要的阶段,这其中包括了大量为了检索

MySQL必知必会的查询

前言: 据身边不少朋友反映,SQL长时间不用的话难免会生疏!本文的几个查询示例可以让你5分钟内快速回忆起MySQL中常用的基础查询语法! ------------ 如何用MySQL解决一些常见问题的例子 在一些例子中,使用数据库表“shop”来储存某个商人(经销商)的每件物品(物品号)的价格.假定每个商人对每项物品有一个固定价格,那么(物品,商人)即为该记录的主关键字. 启动命令行工具mysql并选择数据库: shell> use test 你可以使用以下语句创建示例表: mysql> CRE

《高性能MySQL》读书笔记--查询缓存

1.MySQL查询缓存 很多数据库产品都能够缓存查询的执行计划,对于相同类型的SQL就可以跳过SQL解析和执行计划生成阶段.MySQL还有另一种不同的缓存类型:缓存完整的SELECT查询结果,也就是"查询缓存". 查询缓存系统会跟踪查询中涉及的每个表,如果这些表发生变化,那么和这个表相关的所有的缓存数据都将失效. 查询缓存对应用程序是完全透明的.应用程序无须关心MySQL是通过查询缓存返回的结果还是实际执行返回的结果. 另外,随着现在的通用服务器越来越强大,查询缓存可能是一个影响服务器