Ich habe eine Umfrage angeordnet, wo ein Projekt einige Fragen hat. Benutzer müssen die gegebene Projektantwort von der Öffentlichkeit sammeln. Umfrage Tabellen wieMysql wählen dynamische Zeilenwerte als Spaltenname aus einer Tabelle und Wert aus einer anderen Tabelle
Benutzertabellen
user_id user_name
1 User 1
2 User 2
Projekttisch
project_id project_name
1 project 1
2 project 2
Frage Tisch
ques_id project_id ques_name
1 1 Question 1
2 1 Question 2
3 1 Question 3
4 1 Question 4
Antwort Tabelle
ans_id public_id user_id ques_id ques_ans
1 1 1 1 Answer 1
2 1 1 2 Answer 2
3 1 1 3 Answer 3
4 1 1 4 Answer 4
Jetzt möchte ich eine Berichte generieren, wo Frage Tabellenwerte als Spaltennamen gegeben project_id angepasst und die Frage beantwortet, da Wert von Antworttabelle angepasst durch ques_id
Und sie ist meine erwartete Ausgabe:
User_Name public_id Question 1 Question 2 Question 3 ...
User 1 1 Answer 1 Answer 2 Answer 3 ...
Jemand hat vorgeschlagen, Pivot zu verwenden, aber ich fand "MySQL hat keine native Unterstützung für Pivoting-Operationen" kann mir jemand helfen?
Mögliches Duplikat von: http://stackoverflow.com/questions/12598120/mysql-pivot-table-query-with-dynamic-columns –
Unter der Annahme, dass jeder Benutzer jede Frage nur einmal beantworten kann, dient antwort_id keinem Zweck – Strawberry
Abgesehen davon, ignorieren Sie das vorgeschlagene Duplikat und stattdessen in Betracht ziehen, Probleme der Datenanzeige in Anwendungscode – Strawberry