Besoin d'aide pour ne requête SQL

Fermé
Neo041967 Messages postés 5 Date d'inscription dimanche 14 août 2016 Statut Membre Dernière intervention 7 juillet 2024 - 26 mai 2021 à 09:45
 Francois - 26 mai 2021 à 14:08
Bonjour,

J'aurai besoin de votre aide pour créer une requête SQL. Je vous explique mon problème :
J'ai 2 tables liées par un ID. Chaque enregistrement de la table 1 peut avoir entre 0 et 5 enregistrements correspondant dans la table 2. Ce que je souhaiterai faire, c'est avoir la liste de la table 1 joins à ceux de la table 2. Mais au lieu d'avoir N lignes, je souhaiterais avoir 1 ligne par enregistrement de la table 1avec les enregistrements correspondant de la table 2 en colonne, chaque enregistrement de la table 2 ayant plusieurs champs.

Est-il possible de faire cela avec une "simple" requête SQL ?

Merci pour votre attention

Dany

Configuration: Windows / Edge 90.0.818.66

3 réponses

jee pee Messages postés 40476 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 26 novembre 2024 9 428
Modifié le 26 mai 2021 à 12:16
Bonjour,

Avec Sql Server regarder vers COALESCE() : https://expert-only.com/transact-sql/resultat-de-requete-sql-server-en-ligne-avec-virgules/

Tu écris d'abord ta requete normale, en lignes séparées et tu essayes de l'intégrer dans la fonction.

0
Neo041967 Messages postés 5 Date d'inscription dimanche 14 août 2016 Statut Membre Dernière intervention 7 juillet 2024
26 mai 2021 à 13:57
Bonjour,

merci pour votre réponse. En fait j'aurai voulu que ce soit vraiment des colonnes. Dans l'absolu je pense qu'on peut le faire avec des select pour chaque champs, mais çà va faire beaucoup de sélect, donc pas élégant et surement pas performant non plus, c'est pour ça que je cherche une autre idée, si toutefois c'est possible.

Encore merci.

Dany
0
Voila ce que je ferai moi:
select zone1, zone2, MAX ( CASE WHEN ZONE IDENTIFIANT = 'ma zone fichier primaire' THEN Le resultat END ) AS "NOM-COLONNE" from table 1 join table2 on zone table 1 = zone table 2
0