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 Sql d'extraction


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 23
    Par défaut requête Sql d'extraction
    Bonjour,

    Mon problème est le suivant:
    Dans une table j'ai une colonne ou il y a stocké une information contenant les numéro de compte séparé par un espace. Exemple de colonne [1 25 6 8 45 98]
    Sur ce champ là je veux vérifier si par exemple dans cette colonne il y a le compte 8... et c'est là ou je bloque, j'ai essayé d'utiliser LIKE '8%' mais parfois j'ai des comptes 85.. j'aimerai un peu d'aide s'il vous plait.

    Merci.

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 491
    Par défaut
    bonjour tu peux utiliser l' operateur "~"
    (n'oublie pas les espaces qui entourent le 8)

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    La fonction regexp_split_to_table() répond assez bien à ce problème car elle présente les nombres comme si c'étaient les lignes d'une table.
    Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    test=> select regexp_split_to_table('4 3  25 12', E'\\s+');
     regexp_split_to_table 
    -----------------------
     4
     3
     25
     12
    (4 rows)
    Donc pour tester la présence d'une valeur particulière:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    test=> select 1 where '25' in (select *  from regexp_split_to_table('4 3  25 12', E'\\s+'));
     ?column? 
    ----------
            1
    (1 row)

Discussions similaires

  1. Extraction depuis BdD avec requêtes SQL
    Par Rorylh dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 30/01/2013, 09h54
  2. Extraction requête SQL to CSV
    Par developpeur_débutant dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/03/2012, 10h59
  3. Aide requête SQL + extraction Excel
    Par mary-ppa01 dans le forum Débuter
    Réponses: 3
    Dernier message: 09/06/2010, 16h24
  4. [Requête/SQL] Extraction de versions
    Par voltrane dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 12/04/2007, 19h25
  5. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38

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