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

SQL Procédural MySQL Discussion :

[SET]Recherche d'éléments communs à 2 sets


Sujet :

SQL Procédural MySQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 15
    Points : 12
    Points
    12
    Par défaut [SET]Recherche d'éléments communs à 2 sets
    Bonjour,

    Je cherche à vérifier la présence d'au moins un des éléments d'un SET dans un autre SET.

    Plus précisément, il s'agit dans une fonction de recherche, de trouver les entrées de la base de données pour lesquelles le SET contient au moins une des valeurs fournies à la recherche.

    Par exemple, imaginons un SET ayant pour liste de valeurs ('A', 'B', 'C', 'D').
    Si la recherche soumise est ('A', 'B'), je veux sortir toutes les entrées contenant au moins 'A' ou 'B'. Par exemple, ('A', 'C'), ('B', 'C') feront l'affaire, mais pas ('C', 'D') ou ('C')...

    Ceci revient à déterminer si l'intersection du SET de la base et de celui envoyé via la recherche est vide ou non.

    J'espère m'être à peu près bien exprimé et que quelqu'un aura une réponse à mon problème.

    Merci d'avance.

  2. #2
    Membre averti Avatar de piff62
    Inscrit en
    Décembre 2003
    Messages
    431
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Décembre 2003
    Messages : 431
    Points : 417
    Points
    417
    Par défaut
    Un bout de code a nous montrer ?
    Je vois pas trop ce que tu cherche vraiment a faire

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Mettons que j'ai un champ nommé "mon_set" qui vaut

    SET('A', 'B', 'C', 'D')

    donc les entrées sont sous la forme d'une liste d'un certain nombre de ces éléments (par exemple ('A', 'D'), ('A', 'B', 'D'), ('C') etc.).

    De ma recherche, je tire une autre liste d'éléments, qu'on va nommer S.
    S est de la forme ('A', 'B'...)

    J'ai 4 modes de recherche :
    * SET égaux, je vérifie la close
    `mon_set`=S
    * SET de recherche compris dans le résultat, je vérifie la close
    S IN `mon_set`
    * résultat compris dans le SET de recherche, je vérifie la close
    `mon_set` IN S
    * les deux SET ont des éléments en commun, et c'est la que je ne trouve pas la close. J'avais pensé à quelque chose comme FIND_IN_SET, le seul problème étant que je ne peux pas effectuer la vérification sur toutes les valeurs, mais seulement sur une seule de S.

    Enfin voilà, j'espère que c'est un peu plus clair

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    En fait je viens de me rendre compte que pas mal de choses ne marchaient pas tout à fait comme je le pensais avec les types SET et j'ai des difficultés à les utiliser.

    Donc, si quelqu'un a des informations d'utilisation avancée des types SET, je suis preneur, sinon je vais devoir vraiment fortement limiter mes options de recherche

  5. #5
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Bonjour,

    Il y a un article assez récent à propos du type SET sur mysql.com : http://dev.mysql.com/tech-resources/...-datatype.html

    Je pense que ça pourrait t'aider.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Merci, ça semble très complet en effet.

    Je vais étudier ça en détail

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

Discussions similaires

  1. Comparer 2 à 2 les éléments d'un set
    Par 5kippy dans le forum SL & STL
    Réponses: 4
    Dernier message: 10/10/2007, 21h19
  2. Récupérer le 1° élément d'un SET OF
    Par Tchaill39 dans le forum Delphi
    Réponses: 3
    Dernier message: 05/04/2007, 16h14
  3. Test de l'existence d'un élément dans un set
    Par Rodrigue dans le forum C++
    Réponses: 16
    Dernier message: 28/10/2006, 01h36
  4. [Débutant] Acceder à l'élément d'un set
    Par pinggu dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 01/06/2006, 01h54
  5. [9i] Recherche les tables de characters Set
    Par opinette dans le forum Oracle
    Réponses: 3
    Dernier message: 14/04/2006, 15h16

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