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 :

Enlever des digit


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 474
    Points : 921
    Points
    921
    Billets dans le blog
    5
    Par défaut Enlever des digit
    Bonjour,

    J'ai une table plan_adressage qui contient un id, un varchar adresse_radio_tetra (et d'autre chose).

    Dans radio TETRA, j'ai 8 digit.
    Or, tout les 0 qui préfixe (nombre indéterminé) doit être supprimé.

    '100010000' -> '100010000'
    '012345678' -> '12345678'
    '001234567' -> '1234567'

    ect...

    Y-a-t-il un moyen de faire "simple"?

    Cordialement.

  2. #2
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Avril 2011
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 4 506
    Points : 10 231
    Points
    10 231
    Par défaut
    En utilisant ltrim(chaine, "0") ça pourrait marcher, en principe.

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 474
    Points : 921
    Points
    921
    Billets dans le blog
    5
    Par défaut
    Une solution (pas la plus élégante): passer par des procédure stockées.

    Soit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    create procedure fnc_113819()
    language plpgsql
    as $$
    declare count_plan_adressage integer;
    declare r_var record; 
    declare adresse_tetra_var varchar;
    declare id_var numeric;
    begin
    	select count(*) from plan_adressage into count_plan_adressage where adresse_radio_tetra like '0%';
    	if count_plan_adressage > 0 then
    		for r_var in select * from plan_adressage where adresse_radio_tetra like '0%' loop
    			adresse_tetra_var = r_var.adresse_radio_tetra;
    			id_var = r_var.id;
     
    			update plan_adressage set adresse_radio_tetra=substring(adresse_tetra_var from 2) where id=id_var;
     
    		end loop;
     
    		call fnc_113819();
     
    	end if;
    end;
    $$;
     
    call fnc_113819();
     
    drop procedure fnc_113819();

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 474
    Points : 921
    Points
    921
    Billets dans le blog
    5
    Par défaut
    Effectivement, ltrim, c'est mieux, soit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    update
    	plan_adressage p
    set adresse_radio_tetra =  ltrim(p.adresse_radio_tetra,'0')

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

Discussions similaires

  1. Group BY qui m'enleve des valeurs
    Par EpOnYmE187 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 07/03/2006, 16h52
  2. enlever des éléments de formulaire dynamiquement
    Par jeanvincent dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 16/02/2006, 16h13
  3. enlever des parties de divx
    Par philippe123 dans le forum Vidéo
    Réponses: 5
    Dernier message: 10/02/2006, 18h23
  4. fonction pour enlever des tags
    Par sunp dans le forum API standards et tierces
    Réponses: 14
    Dernier message: 19/12/2005, 20h47
  5. Réponses: 5
    Dernier message: 07/07/2004, 16h05

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