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 PostgreSQL Discussion :

Requête - Regex sur une liste d'integers [11]


Sujet :

Requêtes PostgreSQL

  1. #1
    LFC
    LFC est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Février 2003
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 106
    Points : 70
    Points
    70
    Par défaut Requête - Regex sur une liste d'integers
    Bonjour,

    dans une table, j'ai un champs qui est une concaténation d'integers, et je cherche à trouver les lignes qui matchent via une regex.

    Maintenant, cette table contient 2 lignes
    ligneA ; 1,2,3
    ligneB : 21,33

    si je recherche le motif 1, avec cette requete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT champs1  FROM latable  WHERE champs1 ~ '1';
    la ligneB est également comprise dans le résultat.

    J'ai beau jouer avec les autres éléments de regex, je n'arrive pas à faire la requête qui fera qu'il n'y a aura que la ligneA qui sera retournée.

    Je m'approche du résultat en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select champs1 from latable where '1' ~ champs1;
    et cela retourne
    ligneA:1
    ligneB:{vide}

    Donc, là, c'est comment me débarrasser de ligneB ??

    Avez-vous une idée ?

    Merci.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 577
    Points
    52 577
    Billets dans le blog
    5
    Par défaut
    Tout d'abord on ne parle pas de champs dans une base de donées mais de colonnes dans une table. Le champ, c'est pour le paysan pour ses patates, pour le chirurgien pour inciser avec son bistouri au bon endroit ou encore pour saisir dans un formulaire de la sécu...

    Pour votre problème, ce sera sans aucun doute beaucoup plus simples avec un simple LIKE plutôt que le lourd et couteux REGEX !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT MaColonne  
    FROM MaTable  
    WHERE ',' || MaColonne || ',' LIKE '%,1,%'
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    LFC
    LFC est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Février 2003
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 106
    Points : 70
    Points
    70
    Par défaut
    Bonjour, merci pour la réponse, cela correspond parfaitement à ce que je cherchais. Merci beaucoup. Je clos cette discussion.

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

Discussions similaires

  1. Clause WHERE requête LINQ sur une list
    Par dharkan dans le forum Linq
    Réponses: 1
    Dernier message: 12/04/2019, 19h05
  2. Requête paramétrée sur une liste déroulante
    Par adlinformatik dans le forum Access
    Réponses: 4
    Dernier message: 15/04/2017, 15h38
  3. Réponses: 4
    Dernier message: 24/01/2012, 16h39
  4. [AC-2007] Requête basée sur une liste déroulante
    Par Cinesra dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 08/02/2011, 16h41
  5. Faire une requête de contenu sur une liste personnalisée
    Par filigane dans le forum SharePoint
    Réponses: 0
    Dernier message: 13/09/2007, 11h28

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