Jak wyświetlić wiersz tabeli mysql jako kolumnę
Mam dwa stoły,result
igp
.
wresult
stół mam coś takiego:
<code>|id||student_id ||course_code||grade||session ||level||semester| |1 ||TR/2213234561||MAT111 ||A ||2009/2010||100 ||first | |2 ||TR/2213234561||MAT112 ||B ||2009/2010||100 ||first | |3 ||TR/2213234561||MAT113 ||C ||2009/2010||100 ||first | |4 ||TR/2213234567||MAT111 ||D ||2009/2010||200 ||first | |5 ||TR/2213234567||MAT112 ||C ||2009/2010||200 ||first | |6 ||TR/2213234567||MAT113 ||C ||2009/2010||200 ||first | </code>
Następniegp
stół
<code>|id||student_id ||session ||level||semester||gp | |1 ||TR/2213234561||2009/2010||100 ||first ||4.2| |2 ||TR/2213234567||2009/2010||100 ||first ||3.5| |3 ||TR/2213234561||2010/2011||200 ||first ||4.2| |4 ||TR/2213234567||2010/2011||200 ||first ||3.5| </code>
To, czego chcę, jest takie:
<code>|Matriculation||MAT111||MAT112||MAT113||MAT114||GP | |TR/2213234561||A ||B ||D ||C ||4.2| |TR/2213234567||C ||D ||E ||F ||3.5| </code>
Kod kursu nie jest stały - zależy od kursu zarejestrowanego przez studentów
Ja to zrobiłem:
<code><?php $rst1 = mysql_query("select distinct course_code from result ", $conn); echo "<table callspacing='4'>"; echo "<tr>"; echo "<td> Matriculation Number </td>"; $c_code = array(); while ($row = mysql_fetch_array($rst1)) { $c_code[] = $row['course_code']; } foreach($c_code as $c_code) { echo "<td>" .$c_code. "</td>"; } $sql ="SELECT result.student_id, MAX(CASE WHEN course_code = ' $c_code' THEN grade END) $c_code, gp.CTC FROM result JOIN gp ON gp.student_id = result.student_id GROUP BY student_id"; echo "<td> GP</td>"; $rst = mysql_query("$sql",$conn) or die(mysql_error()); while ($row = mysql_fetch_array($rst)) { echo "</tr>"; echo "<tr>"; echo "<td>" .$row['student_id']. "</td>"; echo "<td>" .$row[$c_code]. "</td>"; } echo "<td>" .$row[$c_code]. "</td>"; echo "<td>" .$row['CTC']. "</td>"; echo"</tr>"; echo "</table>"; ?> </code>
Pierwszym pytaniem było uzyskanie kodu kursu, ponieważ kursy nie są stałe.
z tym kodem mam coś takiego:
<code>|Matriculation||MAT111||MAT112||MAT113||MAT114||GP| |TR/2213234561| |TR/2213234567| </code>
Ale chciałem
<code>|Matriculation||MAT111||MAT112||MAT113||MAT114||GP | |TR/2213234561||A ||B ||D ||C ||4.2| |TR/2213234567||C ||D ||E ||F ||3.5| </code>
Wszelkie sugestie lub wskazówki będą bardzo mile widziane.