J'ai deux tables A et B.Joignez-vous à des lignes du tableau A avec des colonnes de tableau B dans MySQL
Le tableau A contient une liste d'échantillons, qui sont numérotés, mais aussi id caractère. Il a la forme
sample_num sample_id 1 id_1 2 id_2 . . . . . . n id_n
Le Tableau B contient des données d'expression génique pour chaque échantillon. Il a la forme
probe_num 1 2 . . . n 1 2 . . . m
Idéalement je voudrais avoir des échantillons sous forme de lignes, et les gènes sous forme de colonnes, cependant, il y a trop de gènes pour MySQL pour stocker sous forme de colonnes je ne peux donc pas vraiment changer.
Maintenant, on me donne un sous-ensemble d'identifiants d'échantillons et on me demande de retourner les données d'expression génique associées. Mais je ne peux pas comprendre comment effectuer la jointure requise. Je dois rejoindre sur la colonne identifiants du tableau B avec la colonne sample_num du tableau A.
Ce serait facile si je pouvais, par exemple, transposer le tableau B, mais je ne sais pas si cela est possible ou pas donné la limitation sur le nombre de colonnes.
Vous devez avoir une table de jonction avec une ligne par sonde et une expression. Stocker des "tableaux" de données dans des colonnes séparées est généralement une mauvaise idée. –
Alors ... quelle est la structure exacte (et fixe) de la table B? Quels champs a-t-il? Lorsque vous faites référence à la colonne «identificateurs», vous voulez dire un champ avec ce nom, ou il se réfère au champ 1, ou au champ 2, ou ...? – MarcM
@MarcM Les champs correspondent aux entrées de la colonne sample_num de la table A. La structure de la table B n'est pas réellement fixée, ce qui, je pense, est une mauvaise chose. Si un nouvel échantillon est ajouté, une nouvelle colonne est ajoutée à la table B et une nouvelle ligne est ajoutée au tableau A. –