1.group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果。比较抽象,难以理解。

通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。要返回哪些列,由函数参数(就是字段名)决定。分组必须有个标准,就是根据group by指定的列进行分组。

group_concat函数应该是在内部执行了group by语句,这是我的猜测。

1.测试语句:

select group_concat(town) from players group by town

结果去查找town中去查找哪些值是一样的,如果相等,就全部列出来,以逗号分割进行列出,如下:

group_concat(town)

北京,北京
长沙

2.测试:select group_concat(town) from players

结果:

group_concat(town)

长沙,北京,北京,

上面是否可以证明,group_concat只有与group by语句同时使用才能产生效果? 下面进行了实际测验

结论:group_concat()函数需要与group by语句在一起使用,才能得到需要的效果。

原因可以这样理解:group_concat()得到是属于x组的所有成员(函数里面列参数指定需要显示哪些字段)。x组从哪里来?如果没有group by进行指定,那么根本不知道group_concat()根据哪个分组进行显示出成员。 所以,像上面没有group by子句的时候,就显示了长沙和北京。

实际中什么时候需要用到这个函数?

假如需要查询的结果是这样:左边显示组名,右边想显示该组别下的所有成员信息。用这个函数,就可以省去很多事情了。

另外,假如我这样使用:SELECT group_concat( name, sex ) FROM `players` town。意义不大。group_concat()指定一个列是最好的情况。如果指定了多个列。那么显示结果类似这样:

王滔,王小明男,刘惠女,舒明女

oracle中与其一样的功能函数是wmsys.wm_concat()也要配合分组查询group by使用

select j.jobtype,count( j.jobtype) as job_stu_num ,wmsys.wm_concat(e.id) as studentids from exam_student e inner join exam_job j on e.examid=182 
         and e.jobid=j.id  group by j.jobtype,j.id order by j.jobtype ,j.id;

mysql中sql语句中常见的group_concat()函数意思以及用法,oracle中与其一样的功能函数是wmsys.wm_concat()相关推荐

  1. MySql安装教程与HeidiSQL管理工具使用方法、HeidiSQL中SQL语句使用(六)

    文章目录 Mysql下载路径 Mysql管理工具--HeidiSQL下载 安装完成之后可以进行sql语句测试编辑 设置主键自增长 HeidiSQL中SQL语句使用 创建数据库 删除与创建表 像表中插入 ...

  2. Mysql中SQL语句不使用索引的情况

    Mysql中SQL语句不使用索引的情况 MySQL查询不使用索引汇总 众所周知,增加索引是提高查询速度的有效途径,但是很多时候,即使增加了索引,查询仍然不使用索引,这种情况严重影响性能,这里就简单总结 ...

  3. mysql数据库语句分类_细数MySQL中SQL语句的分类

    1:数据定义语言(DDL) 用于创建.修改.和删除数据库内的数据结构,如:1:创建和删除数据库(CREATE DATABASE || DROP  DATABASE):2:创建.修改.重命名.删除表(C ...

  4. 检测mysql中sql语句的效率

    1.通过查询日志 启动Mysql时加参数--log-slow-queries来记录执行时间超过long_query_time秒的sql MySQL 自带 slow log 的分析工具 mysqldum ...

  5. xml中sql语句字段报红

    idea 中mysql的sql语句报红,无论表名还是表字段 原因 是由于sql方言导致的 当我们选择某一个sql方言的时候,xml配置会按照指定规则校验sql是否规范,并给出提示 解决方案 取消sql ...

  6. oracle12测试骤,Oracle中SQL语句解析的步骤

    我们都知道在Oracle中每条SQL语句在执行之前都需要经过解析,这里面又分为软解析和硬解析.那么这两种解析有何不同之处呢?它们又分别是如何进行解析呢?Oracle内部解析的步骤又是如何进行的呢?下面 ...

  7. ASP中SQL语句参考及记录集对象

    DB2 提供了关连式资料库的查询语言 SQL (Structured Query Language),是一种非常口语化.既易学又易懂的语法.此一语言几乎是每个资料库系统都必须提供的,用以表示关连式的操 ...

  8. html5 webDatabase 存储中sql语句执行可嵌套使用

    html5 webDatabase 存储中sql语句执行可嵌套使用,代码如下: var data = window.openDatabase("stu","1.0&quo ...

  9. oracle大于条件,oracle中sql语句中的in的条件数量大于1000有问题

    oracle中sql语句中的in的条件数量大于1000有问题 oracle中sql语句中select * from t_Test t where  t.Id in(1,2,3......)/*数量不能 ...

  10. 查询oracle 表达小,oracle中sql语句小练习(使用连接查询)

    假设A(m,n,p),B(m,n,p) --1.A表中有某一项m而B表中没有 使用左连接查询: select a.* from A a left join B b on a.m=b.m where b ...

最新文章

  1. linux c++开发环境_使用 VM VirtualBox 搭建完善的Linux开发环境
  2. 【数据结构与算法】7.位图算法、12306抢票算法
  3. web计算机导论读书报告,计算机导论 读书报告.doc
  4. POJ - 2778 DNA Sequence(AC自动机+矩阵快速幂)
  5. SAP S/4HANA CDS View的访问控制实现:DCL介绍 1
  6. mysql md5解密_Web渗透测试——Mysql数据库手工注入
  7. linux 命令行 文件管理器,CLEX - 集成命令提示符、“多才多艺”的命令行文件管理器...
  8. 谈谈Web Workers
  9. R与Python手牵手:数据框的构建、读取与基本描述
  10. Centos 6.6 Docker安装(内网坏境)
  11. poi导出excel 损坏_poi导出excel解决方法
  12. C语言画图形(图形库graphics的使用)
  13. 高瓴张磊对话高毅邱国鹭:如何越过投资的价值陷阱?(附实录)
  14. CSU 1256 天朝的单行道 最短路问题
  15. 武汉为什么进不了互联网第一梯队?
  16. 深度学习英文缩写_深度学习相关专业词汇简称汇总
  17. 解读SpanBERT:《Improving Pre-training by Representing and Predicting Spans》
  18. 拉卡拉支付助力企业数字化转型
  19. OpenCV学习+常用函数记录①:图像的基本处理
  20. 在 Microsoft Word 优雅的插入代码块

热门文章

  1. VisualSVN Server版本库搭建
  2. 采购服务器和终端的请示文件,设备采购申请报告模板
  3. 2021电赛F题之openmv巡线(附代码)
  4. SWUST OJ 321: 函数的递归调用
  5. Pandas删除重复行数据
  6. Android 三大图片加载框架的对比——ImageLoader,Picasso,Glide
  7. WorkNC2017基础到五轴编程经典视频教程
  8. 掺氮定向竹节状碳纳米管/石墨烯复合金属氧化物-瑞禧小编
  9. PTA求前缀表达式的值python求解
  10. 查找有向图中两个顶点之间是否存在路径