mysql实现合并同一ID对应多条数据的方法

本文实例讲述了mysql实现合并同一ID对应多条数据的方法。分享给大家供大家参考,具体如下:

如 :

CREATE TABLE `c_classuser_tab` (
 `Id` int(11) NOT NULL AUTO_INCREMENT,
 `Classid` int(11) DEFAULT NULL,
 `Username` varchar(100) DEFAULT NULL,
 `studentid` varchar(100) DEFAULT NULL,
 `College` varchar(100) DEFAULT NULL,
 `Department` varchar(100) DEFAULT NULL,
 `Email` varchar(100) DEFAULT NULL,
 `Phone` varchar(100) DEFAULT NULL,
 `Status` int(11) DEFAULT NULL,
 `Remark1` varchar(100) DEFAULT NULL,
 `Remark2` varchar(100) DEFAULT NULL,
 `Remark3` varchar(100) DEFAULT NULL,
 `activateTime` datetime DEFAULT NULL,
 `joinTime` datetime DEFAULT NULL,
 `userID` int(11) DEFAULT NULL,
 `userType` int(11) DEFAULT NULL,
 PRIMARY KEY (`Id`),
 KEY `C_classuser_tab_index` (`studentid`),
 KEY `idx_classuser_complex` (`Classid`,`userID`)
) ENGINE=MyISAM AUTO_INCREMENT=31091 DEFAULT CHARSET=utf8;

同一ID的老师有多个代课的班级,将其合并,

教师     代课班级

12         1班,2班

代码如下:

select Username , GROUP_CONCAT(Remark1 ,'') as classes  from c_classuser_tab where userID= *   and userType=*

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》

希望本文所述对大家MySQL数据库计有所帮助。

(0)

相关推荐

  • Mysql的GROUP_CONCAT()函数使用方法

    语法: GROUP_CONCAT([DISTINCT] expr [,expr ...][ORDER BY {unsigned_integer | col_name | expr}[ASC | DESC] [,col_name ...]][SEPARATOR str_val]) 下面演示一下这个函数,先建立一个学生选课表student_courses,并填充一些测试数据. SQL代码 复制代码 代码如下: CREATE TABLE student_courses (          stude

  • MySQL统计函数GROUP_CONCAT使用陷阱分析

    本文实例分析了MySQL统计函数GROUP_CONCAT使用中的陷阱.分享给大家供大家参考,具体如下: 最近在用MySQL做一些数据的预处理,经常会用到group_concat函数,比如类似下面一条语句 复制代码 代码如下: mysql>select aid,group_concat(bid) from tbl group by aid limit 1; sql语句比较简单,按照aid分组,并且把相应的bid用逗号串起来.这样的句子大家可能都用过,也可能不会出问题,但是如果bid非常多的话,你就

  • MySQL中group_concat函数深入理解

    本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) 基本查询 mysql> select * from aa; +------+------+ | id| name | +------+------+ |1 |

  • mysql中合并两个字段的方法分享

    例如:select (a+b) as c from 表 类型也一致都是varchar型的,可就是显示不正确. 直到concat() MySQL中concat函数 下面通过一个例子介绍MySQL中的concat函数的使用方法,比如select concat('11','22','33'). MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制字符串,则

  • 关于mysql合并表的详细介绍

    mysql创建合并表和分区表有点相似,他是mysql 的一种特性,可以把多个结构相同的myisam表合并为一个虚表,存续引擎必须是merge,当从合并表中查询就像从子表中查询一样,和视图有写相似,当创建合并表时也有自己的frm和mrg 文件.合并表创建方法create table t3(a  int  primary key ):create table t4(a  int  primary key ):create  table mrg(a int  primary key )  union=

  • mysql如何将多行数据合并成一行

    select group_concat(list_name) from aa_list

  • mysql的group_concat函数使用示例

    MySQL中group_concat函数,完整的语法如下: 复制代码 代码如下: group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) 基本查询 复制代码 代码如下: select * from aa; 复制代码 代码如下: +------+------+| id| name |+------+------+|1 | 10||1 | 20||1 | 20||2 | 20||3 | 200 ||3 |

  • mysql group_concat()函数用法总结

    本文实例讲述了mysql group_concat()函数用法.分享给大家供大家参考,具体如下: group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果.比较抽象,难以理解. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来.要返回哪些列,由函数参数(就是字段名)决定.分组必须有个标准,就是根据group by指定的列进行分组. group_concat函数应该是在内部执行了group by语句,这

  • mysql利用group_concat()合并多行数据到一行

    假设两个表a,b,b中通过字段id与a表关联,a表与b表为一对多的关系.假设b表中存在一字段name,现需要查询a表中的记录,同时获取存储在b表中的name信息,按照常规查询,b表中有多少记录,则会显示多少行,如果需要只显示a表记录行数,则需要把查询name字段得到的多行记录进行合并,可以通过程序实现,但也可直接在sql层完成. 方法: 利用group_concat()方法,参数为需要合并的字段,合并的字段分隔符默认为逗号,可通过参数separator指定,该方法往往配合group by 一起使

  • MySql采用GROUP_CONCAT合并多条数据显示的方法

    本文实例讲述了MySql采用GROUP_CONCAT合并多条数据显示的方法,分享给大家供大家参考.具体实现方法如下: 假设有这样一个需求: 1:班级表: id class_name 2:学生表: id name class_id   如果我们要查所有的班级以及每个班级下的学生,你一定会想到这样写法: 复制代码 代码如下: SELECT banji.*, user.name FROM `banji` left join user on banji.id=user.`class` where ban

  • mysql合并多条记录的单个字段去一条记录编辑

    测试用表结构: 复制代码 代码如下: -- -- 表的结构 `tet` -- CREATE TABLE IF NOT EXISTS `tet` ( `id` int(11) NOT NULL, `name` varchar(255) NOT NULL, `url` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- 转存表中的数据 `tet` -- INSERT INTO `tet` (`id`, `name`, `

  • mysql如何实现多行查询结果合并成一行

    利用函数:group_concat(),实现一个ID对应多个名称时,原本为多行数据,把名称合并成一行. 其完整语法: GROUP_CONCAT(expr) 该函数返回带有来自一个组的连接的非NULL值的字符串结果.其完整的语法如下所示: GROUP_CONCAT([DISTINCT] expr [,expr ...] [ORDER BY {unsigned_integer | col_name | expr} [ASC | DESC] [,col_name ...]] [SEPARATOR st

随机推荐