Union ou jointure de 2 requetes pour donner un resultat a 4 colonnes

giorhof Messages postés 18 Statut Membre -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, a tous,
Besoin de votre aide please,
je cale sur une requête.
j'ai minimum deux requêtes qui me sortent chacune un résultat a 2 colonnes avec le même nombre de lignes.
J'aimerais joindre ou unir ces deux requêtespour en faire une table ou un résultat a 4 colonnes a exploiter après sous forme de grille.

Voici les deux requêtes

SELECT numero,nbre_3_premier from details_course WHERE idcourse = _idcourse ORDER BY nbre_3_premier DESC

select numero1,nbre_5_premier from details_course WHERE idcourse = _idcourse ORDER BY nbre_5_premier DESC

j'aimerais avoir un résultat unique avec les deux requêtes ensemble pour donner 4 colonnes

1 réponse

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 833
     
    Bonjour
    SELECT numero,nbre_3_premier, numero1,nbre_5_premier 
    from details_course WHERE idcourse = _idcourse 
    ORDER BY nbre_3_premier DESC
     ,nbre_5_premier DESC
    
    

    0
    1. giorhof Messages postés 18 Statut Membre
       
      Ok dac . ca marche a peu pres mais ce que je voulais c'est que le numero change aussi selon le order by . C'est a dire le resultat sera numero trié en fonction du order by nbre_3_premier suivi de la colonne nbre_3_premier , puis numero trié en fonction du orber by nbre_5_premier suivi de la colonne nbre_5_premier ce qui va donner 4 colonnes
      Normalement ca devrait donner .
      SELECT numero as num1 ,nbre_3_premier, numero as num2,nbre_5_premier
      from details_course WHERE idcourse = _idcourse
      ORDER BY nbre_3_premier DESC
      ,nbre_5_premier DESC
      mais ca ne marche pas comme prévu.
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > giorhof Messages postés 18 Statut Membre
         
        il faut ajouter une colonne "numéro d'ordre" à chacune de tes deux requêtes.
        tu pourras ensuite faire une jointure de ces deux requêtes, sur base du numéro d'ordre.
        0
      2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention  
         
        un exemple:
        SELECT  (@val := @val + 1) - 1 AS num , numero,nbre_3_premier 
        from details_course  , (SELECT @val := 0) AS seq 
        WHERE idcourse = _idcourse ORDER BY nbre_3_premier DESC
        0