有时候会有这样一个需求,

查询的一条记录需要包含另一个表的多条记录,并且让多条记录成为一个字段组成最终的一条记录。比较难描述,看例子吧。

创建一个产品表:

create table product(

proId int(10),

proName varchar(50)

)

创建一个成分表:

create table componen(

comId int (10),

proId int(10),

comName varchar(50)

)

案例需求:如果一个产品有多个成分,也就是一个产品表对应多个成分表,我想查出的结果,一条记录包含产品 proId, ProName, ComName,的字段。

思路:

先写出不含成分表的查询语句,

然后将一个产品对应的多个成分合并成一个字段,

将合成的字段插入到一个语句中。

实践:

1. select p.proId , p.proName from product p;

2. SELECT group_concat( c.comName ) FROM componen WHERE componen.proId= 1

3. SELECT

p.proId AS "产品id",

p.proName AS "产品名称",

(SELECT group_concat( c.comName ) FROM componen WHERE componen.proId

= p.proId)AS "成分"

FROM

product p;

*注意:第2步骤的语句和第三部引用第二部的语句有差别,那部分很重要的!

*如果要对合并的一方去重:嵌套DISTINCT即可

(SELECT group_concat( DISTINCT(c.comName) ) FROM componen WHERE componen.proId= p.proId)

mysql一对多_mysql一对多查询合并多的一方的数据。相关推荐

  1. mysql+分页脚本_MySql实现分页查询的SQL

    一:分页需求: 客户端通过传递start(页码),limit(每页显示的条数)两个参数去分页查询数据库表中的数据,那我们知道MySql数据库提供了分页的函数limit m,n,但是该函数的用法和我们的 ...

  2. django mysql返回json_Django 1.8.11 查询数据库返回JSON格式数据

    Django 1.8.11 查询数据库返回JSON格式数据 和前端交互全部使用JSON,如何将数据库查询结果转换成JSON格式 环境 Win10 Python2.7 Django 1.8.11 返回多 ...

  3. mysql select查询2个表_mysql – 为SELECT查询合并2个表?

    首先..这里是我创建的两个表(没有相关的列)- CREATE TABLE users_history1 ( circuit tinyint(1) unsigned NOT NULL default ' ...

  4. mysql复数记录_mysql 数据库设计查询规范

    (一)建表规约 1.[强制]表达是与否概念的字段,必须使用is_xxx的方式命名,数据类型是unsignedtinyint(1表示是,0表示否) .说明:任何字段如果为非负数,必须是unsigned. ...

  5. mysql select表达式_MySQL数据库SELECT查询表达式解析

    数据的管理在很大一部分是在进行查找工作,而SELECT占据了很大的一部分 SELECT select_expr [,select_expr...] [ FROM table_reference WHE ...

  6. mysql存储树结构_mysql 树形结构查询(存储过程)

    就用数据数据库表地址数据(中国地区) 来说吧(用Windows 请使用 gbk !!) 可直接运行(去除注解) 存储过程: DELIMITER//dropprocedureifexistsfindLC ...

  7. mysql like 中文版_MySQL使用like查询中文不准确的解决方法

    Mysql数据库like查询中文出现不准确的解决方法,中文检索有时候有点蛋疼,Mysql数据库like查询中文有时候会出现不准确.而且,在进行like检索时,有时候会返回一些与查询词不相关的记录,如查 ...

  8. mysql 索引计划_Mysql索引、查询计划、优化方向

    索引 Innodb索引(聚集索引)(聚簇表分布) Innodb是索引组织表,其结构是B+Tree.其表索引结构是聚簇表分布. 其叶子节点保存了Key+Row Data(聚集索引,按主键排序),其Key ...

  9. mysql排序加权_mysql多关键词查询相关匹配加权排序

    SELECT id, title, SUM((CASE WHEN title LIKE '%复仇者%' THEN 1 ELSE 0 END)+(CASE WHEN title LIKE '%联盟%' ...

最新文章

  1. 百度CTO王海峰阐释AI融合创新,降低门槛,按下产业智能化加速键
  2. NoSQL生态系统——事务机制,行锁,LSM,缓存多次写操作,RWN
  3. Java---中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是“打鱼”还是“晒网”。
  4. Docker Review - 图形化工具 Portainer
  5. Document.visibilityState 页面监听 vue中实现离开页面时计时停止: 停止计时后从上一次开始计时
  6. android进程与线程详解三:AsyncTask
  7. 【剑指offer】找出数组中出现一次的两个数
  8. 浅谈shell中的clear命令实现
  9. 小程序开发(12)-之分页封装
  10. leetcode python3 简单题53. Maximum Subarray
  11. 孙鑫VC学习笔记:第十二讲 (四) 用API函数、CFile类操作文件
  12. 天翼云虚拟IP地址及其在高可用集群中的应用
  13. 揭开WebDriver面纱
  14. 计算机配件仓库照片,配件仓库存管理技巧
  15. 全球与中国无线充电芯片市场深度研究分析报告
  16. kettle实例-高级转换-数据合并
  17. 如何在Linux上创建手册页
  18. 全球LTE终端市场的现状及未来
  19. Python绘制指数加权平均线
  20. 【Oracle 数据库】奶妈式教程day15 DDL、DML、索引、视图、序列、死锁这一篇就够了

热门文章

  1. 怎么停止skywalking_Skywalking部署常见问题以及注意事项
  2. 前端页面预览word_jquery.media.js实现前端页面预览
  3. 华硕z9pa u8 bios下载_教程:图文教学,华硕M8H M8R硬破解支持intel 9代处理器
  4. 用计算机怎么弹离人愁数字,拇指琴新手入门曲谱——离人愁
  5. 【渝粤题库】国家开放大学2021春3990产品管理题目
  6. 【渝粤题库】广东开放大学 外贸会计1 形成性考核
  7. 【渝粤题库】国家开放大学2021春1703农村发展理论与实践题目
  8. 通讯模块板载天线设计方法
  9. webservice 参数太大_手把手系列:常用数据交换方案Web Service接口处理法
  10. 十进制数与八进制数互相转换(MATLAB和C版本)