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

Requêtes MySQL Discussion :

Select champs égaux sur même table


Sujet :

Requêtes MySQL

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1
    Par défaut Select champs égaux sur même table
    Bonjour,

    je souhaiterai effectuer une requête qui me sélectionne les enregistrements dont 2 champs sont égaux (PositionX et PositionY) et ceci dans la même et unique table.

    J'ai une table qui ressemble à ceci :

    Id PositionX PositionY
    60 5 5
    66 2 3
    62 2 3
    64 -4 -2
    65 -4 -1

    J'aimerai donc que le Select me retourne les Id 62 et 66 car les positions X et Position Y sont égales (2 pour les X, 3 pour les Y).

    J'imagine que la solution est assez simple mais ce qui me bloque c'est que tout se passe dans la même table. Par avance merci pour l'aide apportée.

  2. #2
    Membre Expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Par défaut
    Saluton,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT t1.Id, t2.Id
    FROM latable t1
    INNER JOIN latable t2
    ON t1.PositionX=t2.PositionX
    AND t1.PositionY=t2.PositionY
    Le seul souci c'est que cette requête va te retourner 62,66 et 66,62.
    Tous les couples et leur inverse.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  3. #3
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4
    Par défaut
    Non même pas en faite. Le résultat retourné est celui-ci :

    Id Id
    60 60
    66 66
    62 62
    64 64
    65 65

    Ce qui est logique vu le que latable t1 se joint à latable t2 sur elle même en faite puisque c'est la même table. La solution n'est donc pas celle-là mais c'était bien essayé...

  4. #4
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4
    Par défaut
    Désolé de reposter mais ta solution m'a poussé a aller plus loin et j'ai trouvé ce qu'il manquait : WHERE t1.Id != t2.Id.

    Le code est donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT t1.Id, t2.Id
    FROM latable t1
    INNER JOIN latable t2
    ON t1.PositionX=t2.PositionX
    AND t1.PositionY=t2.PositionY
    WHERE t1.Id != t2.Id
    Merci beaucoup pour la réponse et la rapidité

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Occurence d'une valeur sur deux champs de la même table
    Par arihane dans le forum Langage SQL
    Réponses: 2
    Dernier message: 03/02/2015, 20h30
  2. [MySQL-5.1] UPDATE SELECT sur même table
    Par Invité dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/08/2013, 10h08
  3. [Toutes versions] Condition sur 2 champs d'une même table pour éviter des doublons
    Par btks59 dans le forum Modélisation
    Réponses: 6
    Dernier message: 23/05/2011, 08h48
  4. Conditions sur les champs d'une même table
    Par Pucho dans le forum Modélisation
    Réponses: 10
    Dernier message: 19/10/2007, 17h52
  5. SELECT ORDER BY sur 2 tables
    Par _Eric_ dans le forum Langage SQL
    Réponses: 5
    Dernier message: 21/07/2004, 12h17

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