我现在有一个具有以下格式的数据库:转换MYSQL数据库的行转换成列
ID | Year | Name | Address | Penalty
1 | 2015 | Test 1 | Test 1 | 0.2
2 | 2014 | Test 1 | Test 1 | 0.3
3 | 2013 | Test 1 | Test 1 | 0.4
4 | 2015 | Test 2 | Test 2 | 0.5
5 | 2014 | Test 2 | Test 2 | 0.6
6 | 2015 | Test 3 | Test 3 | 0.7
我所试图做的是编写一个查询,将产生类似这样的格式:
ID | Name | Address | 2015Penalty | 2014Penalty | 2013Penalty
1 | Test 1 | Test 1 | 0.2 | 0.3 | 0.4
2 | Test 1 | Test 1 | 0.5 | 0.6 | 0.2
3 | Test 1 | Test 1 | 0.7 | 0.8 | 0.3
基本上,每个公司每年都会有一排,每个公司需要一排,然后是每年罚款的一列。
这可能吗?我想如果可能的话完全做到这一点在SQL因为行基本上得到了回显到一个页面,它成为一个Excel电子表格:
while($row = mysqli_fetch_assoc($res)) {
if(!$flag) {
// display field/column names as first row
echo implode("\t", array_keys($row)) . "\r\n";
$flag = true;
}
array_walk($row, 'cleanData');
echo implode("\t", array_values($row)) . "\r\n";
}
我一直想看看是否有办法做在PHP中,但我不知道如何做到这一点,所以任何帮助,不胜感激。如果需要进一步澄清,请告诉我。
编辑
我也许应该更具体,这样的列会自动生成基于这些年来,因为每年有数据已导入,然后SQL必须,我想它也会更新。如果有办法让这个自动化,那会好很多。
你描述的被称为*旋转*,供您参考。 –
我不知道!对于SQL查询,有点初学者,现在转到谷歌,谢谢。 –
这么多行话,这么短的时间! –