我現在有一個具有以下格式的數據庫:轉換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查詢,有點初學者,現在轉到谷歌,謝謝。 –
這麼多行話,這麼短的時間! –