IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

[SQL] assembler les résultats de 2 requêtes sur 2 tables


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 28
    Par défaut [SQL] assembler les résultats de 2 requêtes sur 2 tables
    Bonjour, je voudrais assembleer 2 tables afin de pouvoir effectuer des statistiques.
    J'ai 2 tables : une avec les utilisateurs inscrits, et l'autre avec els utilisateurs non inscrits.
    Dans ces tables j'ai des infos du style : sexe, age, profession...

    Pour l'instant je faisais ca

    $sqlinscrit = "SELECT * FROM utilisateur_inscrit WHERE sexe = 'homme'";
    $sqlnoninscrit = "SELECT * FROM utilisateur_noninscrit WHERE sexe = 'homme'";

    et j'additionnais les 2.

    Je suis sur qu'il y a moyen d'effectuer cette requete une seul fois mais je trouve pas. J'ai essayé UNION mais ca ne marche pas.

    J'espere que vous pouvez m'aider.

    Merci

  2. #2
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    N'aurai tu pas a la base une problème de coherence ?
    Plutot que d'avoir deux tables pourquoi ne pas en avoir une seule avec un champ booleen "est_inscrit" a true ou false ?

    Ceci étant, si tu tape "select" "union" dans google, puis que tu cliques sur le premier lien tu trouves :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT nom, prénom
    FROM Table1
    UNION
    SELECT nom, prénom
    FROM Table2;
    As-tu essayé ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 28
    Par défaut
    oui c'est ce que j'ai essayé. Sauf que j'ai fait SELECT *.
    je vais essayé avec exactement ta synthaxe en mettant SELECT sexe

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 28
    Par défaut
    J'ai essayé plusieurs chose, d'abord :

    $sql = "SELECT * FROM compte_utilisateur WHERE sexe = 'homme' UNION SELECT * FROM utilisateur WHERE sexe = 'homme'";

    puis :

    $sql = "SELECT sexe FROM compte_utilisateur WHERE sexe = 'homme' UNION SELECT sexe FROM utilisateur WHERE sexe = 'homme'";

    et ensuite j'ai testé ces 2 lignes juste avec un WHERE a la fin.

    J'ai toujours une erreur de synthaxe.

  5. #5
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    Juste une idée en passant, tente :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "SELECT compte_utilisateur.sexe FROM compte_utilisateur WHERE compte_utilisateur.sexe = 'homme' UNION SELECT utilisateur.sexe FROM utilisateur WHERE utilisateur.sexe = 'homme'";
    Et sinon, mets nous le message d'erreur complet que tu récuperes.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 28
    Par défaut
    J'ai essayé ta synthaxe, ca ne marche pas.
    Voila le message d'erreur :
    Erreur de selection You have an error in your SQL syntax near 'UNION SELECT utilisateur.sexe FROM utilisateur WHERE utilisateur.sexe = 'homme'' at line 1

Discussions similaires

  1. mettre les résultat d'une requête sur plusieurs colonne
    Par irma2011 dans le forum Requêtes
    Réponses: 4
    Dernier message: 11/01/2012, 11h09
  2. Les résultats d'un Select sur une table
    Par naznaz dans le forum Bases de données
    Réponses: 1
    Dernier message: 04/11/2007, 11h58
  3. Récupération du résultat d'une requête sur une table liée
    Par champijulie dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 05/06/2007, 12h26
  4. Recupérer le résultat d'une requête sur une table Firebird
    Par defluc dans le forum Bases de données
    Réponses: 7
    Dernier message: 20/04/2007, 18h30
  5. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 13h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo