J'utilise l'API de monkey Survey pour transférer des données d'enquête dans un entrepôt de données SQL.Mappage de 5 colonnes à une table (ID, dimension) sans 5 jointures?
Je suis le dumping des données de réponse dans une table '' resonses ainsi:
survey_id, Q1, Q2, Q3, Q4, Q5
survey3944, 848948344, 430984384, 43094839, 238094983, 2380284
Ensuite, j'ai une table de dimension 'de answer_key' qui a les combos id/texte. Tels que
ID, text
848948344, 5 - very satisfied
Je me demande comment je peux rejoindre les 5 colonnes de réponse ci-dessus en texte significatif (ou au moins le nombre entier) sans faire 5 Assemble. Je veux dire que j'ai la table "réponses" et la table "answer_key".
Ma première pensée serait passer par le mouvement:
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
Est-ce que la meilleure façon d'y parvenir? Je me demandais juste. Surtout si l'enquête est étendue à 10 questions, ou non. Je réalise que je peux avoir une rangée pour chaque réponse à une question plutôt que chaque sondage pour la structure de la table --- c'est une possibilité mais je pense que c'est un peu plus difficile étant donné la structure du JSON, mais c'est peut-être plus logique.