PHP MySQL将来自不同行的单元格组合在一起
发布时间:2020-12-13 17:43:55 所属栏目:PHP教程 来源:网络整理
导读:我有一个数据库,其中包含身份证号码,姓名,课程期限和教师姓名.每行包括学生的ID,期间和教师,这意味着每个学生有多行.那不是我的问题.我的问题是有些班级列出了两个教师……这意味着1个班级有两个独立的行,每个教师一个.不幸的是,我无法控制数据的格式,因为它
我有一个数据库,其中包含身份证号码,姓名,课程期限和教师姓名.每行包括学生的ID,期间和教师,这意味着每个学生有多行.那不是我的问题.我的问题是有些班级列出了两个教师……这意味着1个班级有两个独立的行,每个教师一个.不幸的是,我无法控制数据的格式,因为它是从没有很多格式选项的系统导出的.
这是一个例子,注意第23和24行是针对同一个班级和学生的,但唯一不同的是教师姓名. pk id last first period teacher 14 12345 Smith John 3 HARRIS 15 12345 Smith John 8 LEAL 17 12345 Smith John 1 HOUSTON 23 56789 Doe Jane 8 MERCER 24 56789 Doe Jane 8 RUIZ 25 56789 Doe Jane 3 BECK 26 56789 Doe Jane 1 STEED 我想将具有相同句号和学号的两行合并为一行.所有信息都保持不变,除了两个不同的教师姓名将被合并为“Mercer& Ruiz”之类的东西.理想情况下,最终结果看起来像, 24 56789 Doe Jane 8 MERCER & RUIZ 这可能使用PHP和/或MySQL吗?我不是在寻找任何人编写整个代码或任何东西.我似乎无法想到实现它的方法.我对任何方向/指示方式都很满意. 一如既往,感谢您的时间和帮助. 解决方法SELECT MAX(pk),ID,`last`,`first`,GROUP_CONCAT(teacher SEPARATOR ' & ') teachers FROM tableName // WHERE clause here... GROUP BY `last`,`Period` // ORDER BY clause here.... > SQLFiddle Demo SOOURCE > GROUP_CONCAT() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |