Étant donné cette structure de table, je souhaite aplatir les relations plusieurs-à-plusieurs et placer les valeurs dans le champ Nom d'une table dans colonne en-têtes et les quantités de la même table dans les valeurs de colonne. L'idée actuelle qui va fonctionner est de mettre les valeurs dans un dictionnaire (hashtable) et de représenter ces données dans le code, mais je me demande s'il y a une façon SQL de le faire. J'utilise également Linq-to-SQL pour l'accès aux données, donc une solution Linq-to-SQL serait idéale.Comment faire des requêtes Table plusieurs-à-plusieurs (les valeurs d'une table deviennent des en-têtes de colonne)
[TableA] (int Id)
[TableB] (id int, string Nom)
[TableAB] (int tableAId, int tableBId, int Quantité)
fk: TableA. Id joint à TableAB.tableAId
fk: TableB.Id joint à TableAB.tableBId
Est-il possible que je peux interroger les trois tables et retourner un résultat par exemple:
TableA
[Id]
1
TableB
[Id], [Name]
1, "Red"
2, "Green"
3, "Blue"
TableAB
[TableAId], [TableBId], [Quantity]
1 1 5
1 2 6
1 3 7
Query Result:
[TableA.Id], [Red], [Green], [Blue]
1, 5, 6, 7