Ich verwende Survey Monkey API, um Umfragedaten in ein SQL Data Warehouse zu speichern.Mapping 5 Spalten zu einer (ID, Dimension) Tabelle ohne 5 Joins?
ich Dumping So Antwortdaten in eine Tabelle 'resonses' so:
survey_id, Q1, Q2, Q3, Q4, Q5
survey3944, 848948344, 430984384, 43094839, 238094983, 2380284
Dann habe ich eine dreidimensionale Tabelle 'answer_key', der die id/Text Combos hat. Wie
ID, text
848948344, 5 - very satisfied
Ich frage mich, wie ich die 5 Antwort Spalten oben in einen sinnvollen Text (oder zumindest die ganze Zahl ist), ohne dabei 5 schließt sich anschließen kann.
Ich meine, ich habe die Tabelle 'Antworten' und die Tabelle 'Antwort_Schlüssel'.
Mein erster Gedanke würde durch die Bewegung werden gehen:
Select r.survey_id, a.text, a2.text, a3.text, a4.text, a5.text
from responses r
inner join answer_key a on r.q1 = a.id
inner join answer_key a2 on r.q2 = a2.id
inner join answer_key a3 on r.q3 = a3.id
inner join answer_key a4 on r.q4 = a4.id
inner join answer_key a5 on r.q5 = a5.id
Ist das der beste Weg, dies zu erreichen? Ich frage mich nur. Vor allem, wenn die Umfrage auf 10 Fragen erweitert wird, oder was nicht.
Ich weiß, ich kann eine Zeile für jede Frage Antwort haben, anstatt jede Umfrage für die Tabellenstruktur --- das ist eine Möglichkeit, aber ich denke, es ist ein bisschen schwieriger angesichts der Struktur des JSON, aber vielleicht ist es logischer.