Une requete...

Résolu
Bonjour,

imaginez deux tables t1 et t2 et dans ces tables il existe deux attribut t11 ds t1 et t22 ds t2...

comment ecrit une requete dans laquelle...

select t11,t22 from t1,t2 where $h=t11 ou $h=t22

et si je utilise mysql-fetch-array il faut une resultat c-a-d

$k=mysql_query(la requete preced);
$E=mysql-fetch-array($k)

donc $E[un seul nom qui contient le resultat de la requete]

"j'ai utilise ca ds ajax si j'entre un caractere dans un champ text le champ est rampli automatiquement selon des valeurs de deux table"

J'espère que j'ai réussi dans la description du problème

6 réponses

  1. Bonjour,

    Ce que tu veux, c'est UNION, non ?

    Essaie cette requête :

    SELECT t11 FROM t1 WHERE $h = t11
    UNION
    SELECT t22 FROM T2 WHERE $h = t22

    Par contre, ce que je ne comprends pas avec ton exemple, c'est que ça revient à récupérer $h... que tu connais déjà... À mon avis, il y a un soucis dans le WHERE que tu nous demandes. Il ne s'agit pas de t11 et t22, mais plutôt d'autres colonnes...

    Xavier
    1. Est-ce que tes deux tables ont un lien entre elles (genre une colonne en commun ou autre) ?

      Car ta requête s'écrirait plutôt

      select t11,t22 from t1 inner join t2 on t1.quelquechose=t2.quelquechose where $h=t11 ou $h=t22
      1. non,le probleme c il faut le resultat des select classer dans un seul table c-a-d si t11=2,3,4 et t22 =5,6,7 le resultat un table qui nome par example result qui contient 1,2,3,4,5,6,7...
        1. merci xavier

          SELECT t11 FROM t1 WHERE $h = t11(avec t11 un des valeurs de t1)
          UNION
          SELECT t22 FROM T2 WHERE $h = t22 (.............................................)

          merci bcp bcp
          -------------------------------------------------------------------
          Par contre, ce que je ne comprends pas avec ton exemple, c'est que ça revient à récupérer $h... que tu connais déjà... À mon avis, il y a un soucis dans le WHERE que tu nous demandes. Il ne s'agit pas de t11 et t22, mais plutôt d'autres colonnes...
          ------------pour donner un example simple avec un seul valeur t11 qui deja connu--------------------------------------------------------
          1. N'hésite pas à mettre +1 ;)
        2. Oulah !

          Je te donne l'algo tu l'écris en sql ?

          Tant que (on est pas à la fin de bd1 ni de bd2) faire 
                   si (case de bd1 > case de bd2) alors 
                            case de bd3 <= case de bd2 
                            passage à la case de bd3 suivante 
                            passage à la case de bd2 suivante 
                   sinon 
                            case de bd3 <= case de bd1 
                            passage à la case de bd3 suivante 
                            passage à la case de bd1 suivante 
                   fin si 
          fin tant que 
          Si (on est pas à la fin de bd1) alors 
                   tant que (on est pas à la fin de bd1) faire 
                            case de bd3 <= case de bd1 
                            passage à la case de bd3 suivante 
                            passage à la case de bd1 suivante 
                   fin tant que 
          fin si 
          Si (on est pas à la fin de bd2) alors 
                   tant que (on est pas à la fin de bd2) faire 
                            case de bd3 <= case de bd2 
                            passage à la case de bd3 suivante 
                            passage à la case de bd2 suivante 
                   fin tant que 
          fin si 


          Voilà ! plus qu'à le traduire ! PS si tu as une même valeur présente dans les deux tables, elle sera recopié autant de fois qu'elle est présente.

          Varaldi Q.
          Laisse moi 2 minutes que j'te trouve un autre truc...
          1. t11=2,3,4 et t22 =5,6,7 c-a-d les valeurs dans les attributs la case 1 de t11=2...
          2. imaginez deux table voitures et Camions

            et les deux tables composes d'un seul attribut voitures-->marque et Camions-->Taille par example....

            donner moi la requte qui affiche les marques et les tailles mais dans un seul table nommé voicam...""

            merci Varaldi Q pour le Suivi...
          3. Ah ok !

            Il te faut juste mettre order by asc à la fin de ta requête, pour trier la base de données en résultant !
          4. non!!!!!!!!!

            mais le resultat doit étre une table avec une attribut....

            donner moi la requte qui affiche les marques et les tailles mais dans un seul table nommé voicam..."" avec comme valeur les valeurs des deux attributs t11 t22
        3. non impossible de trouve deux valeurs egaux entre les deux tables
          1. Ca marchera tkt
          2. bd1 c-a-d base de donnee
          3. un autre...
          4. ????