mysql:如何把第一列和第二列一样的多行数据合并成一行?

时间:2021-10-02 10:30:13
为了方便看结果,各位请把下面的代码拷贝到html页面就知道我要问什么了?
只是这里无法显示出表格来,麻烦各位!
<table width="418" border="1">
  <tr>
    <td width="48">teacher </td>
    <td width="68">class_time</td>
    <td width="52">t900    </td>
    <td width="52">t930 </td>
    <td width="39">t100</td>
    <td width="36">t1030</td>
    <td width="41">t1100</td>
  </tr>
  <tr>
    <td>A       </td>
    <td>2012-5-14 </td>
    <td>班级A</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>A </td>
    <td>2012-5-14 </td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>班级B</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>A </td>
    <td>2012-5-14 </td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>班级C</td>
  </tr> <tr>
    <td>B</td>
    <td>2012-5-14 </td>
    <td>&nbsp;</td>
    <td>班级D</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>B</td>
    <td>2012-5-14 </td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>班级E</td>
    <td>&nbsp;</td>
  </tr>
</table>
<p>合并成</p>
<table width="418" border="1">
  <tr>
    <td width="48">teacher </td>
    <td width="68">class_time</td>
    <td width="52">t900 </td>
    <td width="52">t930 </td>
    <td width="39">t100</td>
    <td width="36">t1030</td>
    <td width="41">t1100</td>
  </tr>
  <tr>
    <td>A </td>
    <td>2012-5-14 </td>
    <td>班级A</td>
    <td>&nbsp;</td>
    <td>班级B</td>
    <td>&nbsp;</td>
    <td>班级C</td>
  </tr>
  <tr>
    <td>B</td>
    <td>2012-5-14 </td>
    <td>&nbsp;</td>
    <td>班级D</td>
    <td>&nbsp;</td>
    <td>班级E</td>
    <td>&nbsp;</td>
  </tr>
 
</table>

2 个解决方案

#1


 (不要高估你的汉语表达能力或者我的汉语理解能力)
   建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
   参考一下这个贴子的提问方式 http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
   
   1. 你的 create table xxx .. 语句
   2. 你的 insert into xxx ... 语句
   3. 结果是什么样,(并给以简单的算法描述)
   4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
   
   这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。

   

#2


select teacher,class_time,group_concat(t900 SEPARATOR ''),group_concat(t930 SEPARATOR ''),group_concat(t930 SEPARATOR ''),group_concat(t100 0SEPARATOR ''),group_concat(t1030 SEPARATOR ''),group_concat(t1100 SEPARATOR '')
from tb
group by teacher,class_time

#1


 (不要高估你的汉语表达能力或者我的汉语理解能力)
   建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
   参考一下这个贴子的提问方式 http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
   
   1. 你的 create table xxx .. 语句
   2. 你的 insert into xxx ... 语句
   3. 结果是什么样,(并给以简单的算法描述)
   4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
   
   这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。

   

#2


select teacher,class_time,group_concat(t900 SEPARATOR ''),group_concat(t930 SEPARATOR ''),group_concat(t930 SEPARATOR ''),group_concat(t100 0SEPARATOR ''),group_concat(t1030 SEPARATOR ''),group_concat(t1100 SEPARATOR '')
from tb
group by teacher,class_time