0
我挖一些信息是關於數據透視表中的MySQL,幸運的是我發現的東西,我測試它在sqlfiddle,並在WAMP控制檯: Mysql的數據透視表沒有結果顯示
都有怎麼把一個不同的數據我在wamp console中使用的是我的實際數據庫。
不幸的是,當我在php測試它有不同於sqlfiddle和WAMP控制檯沒有結果..
這裏是我的腳本:
$link = mysqli_connect("localhost", "root", "", "dbmobile_class_record");
$sql_pivot = "SET @sql = NULL;";
$sql_pivot .= "SELECT
GROUP_CONCAT(
DISTINCT CONCAT(
'MAX(IF(criteria = ''',
criteria,
''', score, NULL)) AS ',
CONCAT(',criteria,')
)
) INTO @sql FROM tb_student_record;";
$sql_pivot .= "SET @sql = CONCAT(
'SELECT stud_name, ',
@sql,
' FROM tb_student_record GROUP BY stud_name'
);";
$sql_pivot .= "PREPARE stmt FROM @sql;";
$sql_pivot .= "EXECUTE stmt;";
$sql_pivot .= "DEALLOCATE PREPARE stmt;";
if (mysqli_multi_query($link, $sql_pivot)){
do {
if ($result = mysqli_store_result($link)){
while ($row = mysqli_fetch_array($result)){
echo $row['criteria'];
echo $row['stud_name'];
echo $row['score'];
}
mysqli_free_result($result);
}
} while (mysqli_next_result($link));
}