2016-05-18 10 views
5

Ho una tabella sql. la tabella mostra studentID, Subject_Name e Marks. Spero che tu possa capire i datiphp two dimention array

Ora ho bisogno di mostrarlo nel front-end visualizzando lo studentID verticalmente attraverso l'asse Y e subject_Name orizzontalmente attraverso l'asse X. I segni dovrebbero apparire come il corpo del tavolo.

Io uso php come lingua lato server.

aiuto.

+2

si può solo richiamare l'output come si vuole e rendere la questione significativa. Metti la query e l'output desiderato. –

+0

I 'segni' sono denormalizzati? Qualcosa come la stringa 'A, A +, C'? –

+0

puoi mostrarci come appare la tabella attuale? e come vuoi che guardi? – Webeng

risposta

1

credo che una query semplice perno vi darà il set di risultati che si desidera:

SELECT studentID, 
    SUM(CASE WHEN Subject_Name = 'CHEMISTRY' THEN Marks ELSE 0 END) AS `CHEMISTRY`, 
    SUM(CASE WHEN Subject_Name = 'BIOLOGY' THEN Marks ELSE 0 END) AS `BIOLOGY`, 
    SUM(CASE WHEN Subject_Name = 'ENGLISH' THEN Marks ELSE 0 END) AS `ENGLISH`, 
    SUM(CASE WHEN Subject_Name = 'MATH'  THEN Marks ELSE 0 END) AS `MATH` 
FROM students 
GROUP BY studentID 

È possibile sostituire e aggiungere/sottrarre le colonne di esempio che ho dato con i nomi dei soggetti effettivi del corso nella tabella.

seguire il link sottostante per una demo di lavoro:

SQLFiddle