#1 Wed 07 November 2012 11:29
- yoyo72
- Participant actif
- Date d'inscription: 9 Jul 2008
- Messages: 101
concanténation de 3 champs
Bonjour à tous,
J'utilise postgres 8.3
Je voudrais connaitre la syntaxe pour ajouter un champ dans une table existante et lui affecter la concaténation de 3 champs issus de cette même table.
Merci pour votre aide
Hors ligne
#2 Wed 07 November 2012 13:29
- VianneyD
- Participant assidu
- Date d'inscription: 30 May 2011
- Messages: 153
Re: concanténation de 3 champs
Bonjour,
Ce sera quelque chose de ce style :
Code:
ALTER TABLE matable ADD COLUMN macolonne text; UPDATE matable SET macolonne = champ1 || champ2 || champ3;
Vianney Dugrain
Hors ligne
#3 Wed 07 November 2012 13:33
Re: concanténation de 3 champs
Bonjour,
l'opérateur || semble dédié à ce phénomène.
Ex :
Code:
select loc_id_localisation || '' || tlo_id_type_localisation || '' || tlo_id_type_localisation from t_localisation limit 100
Dernière modification par heretik25 (Wed 07 November 2012 13:35)
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#4 Thu 08 November 2012 10:50
- yoyo72
- Participant actif
- Date d'inscription: 9 Jul 2008
- Messages: 101
Re: concanténation de 3 champs
Bonjour et merci à vous deux,
voici la requete que j'ai réalisée
ALTER TABLE d72_2012_proprietaire_cg72 ADD COLUMN ID_PROP character varying(12);
UPDATE d72_2012_proprietaire_cg72 SET ID_PROP = ccodep || ccodir || ccocm || dnupro ;
mais j'ai un message d'erreur
ERROR: relation "d72_2012_proprietaire_cg72" does not exist
********** Erreur **********
ERROR: relation "d72_2012_proprietaire_cg72" does not exist
État SQL :42P01
Merci
Hors ligne
#5 Thu 08 November 2012 10:54
Re: concanténation de 3 champs
La table "d72_2012_proprietaire_cg72" existe bien ?
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#6 Thu 08 November 2012 11:08
- yoyo72
- Participant actif
- Date d'inscription: 9 Jul 2008
- Messages: 101
Re: concanténation de 3 champs
En fait c'est très bizarre (voir pièce jointe) car dans le navigateur d'objet ma table se nomme bien d72_2012_proprietaire_cg72, par contre dans le panneau SQL elle se nomme majic_2012.d72_2012_proprietaire_cg72
Donc évidement cela ne fonctionnait pas!!!
Maintenant c'est ok merci à tous de votre aide
Bonne journée
Hors ligne
#7 Thu 08 November 2012 11:10
Re: concanténation de 3 champs
majic_2012 doit être le schéma ?
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#8 Thu 08 November 2012 11:14
- yoyo72
- Participant actif
- Date d'inscription: 9 Jul 2008
- Messages: 101
Re: concanténation de 3 champs
C'est exact, en fait j'ai l'import avec l'outil geokettle et nous devons mettre le schéma...mais bon c'est un peu couillon...
Hors ligne
#9 Thu 08 November 2012 14:57
Re: concanténation de 3 champs
Bonjour,
C'est exact, en fait j'ai l'import avec l'outil geokettle et nous devons mettre le schéma...mais bon c'est un peu couillon...
Tu parles bien de ton erreur là, hein ?
Parce que non, utiliser des schémas n'est pas couillon. D'ailleurs mettre ses tables dans le schéma public dans une base postgis, là c'est un peu couillon
[Message perso : Si un Corse me lit ... ]
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#10 Thu 08 November 2012 15:11
- yoyo72
- Participant actif
- Date d'inscription: 9 Jul 2008
- Messages: 101
Re: concanténation de 3 champs
on est d'accord...
Encore merci et bonne journée
Hors ligne
#11 Thu 08 November 2012 15:22
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
Re: concanténation de 3 champs
D'ailleurs mettre ses tables dans le schéma public dans une base
Fonctionne aussi sous Oracle pour produire qq chose de couillon.
art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.
Hors ligne
#12 Thu 08 November 2012 16:25
Re: concanténation de 3 champs
Bonjour,
l'opérateur || semble dédié à ce phénomène.
Ex :Code:
select loc_id_localisation || '' || tlo_id_type_localisation || '' || tlo_id_type_localisation from t_localisation limit 100
Juste pour info, pour revenir au sujet : si un des champs est null, la concaténation résultante sera null. Pour éviter cela il faut utiliser coalesce :
select coaslesce(loc_id_localisation,0) || '' || coalesce(tlo_id_type_localisation,0) || '' || coalesce(tlo_id_type_localisation,0)
Ce qui signifie : si la 1ere valeur est null, prendre la seconde, sinon la suivante, ...
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#13 Thu 08 November 2012 17:54
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3197
- Site web
Re: concanténation de 3 champs
Le Corse un peu couillon lit ....
Fallait me faire un croquis pour utiliser les schémas ...
C'est le défaut des fonctionnaires quand ils voient "public" ils mettent tout dedans !
ceci dit
Code:
CREATE SCHEMA AUTHORIZATION couillon;
C'est pas bien compliquer à ajouter, comme cela on connait le nom et le propriétaire facilement !
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#14 Fri 09 November 2012 20:00
- Patrice
- JeSuisCharlie
- Date d'inscription: 16 Sep 2005
- Messages: 4792
Re: concanténation de 3 champs
Hello
Heureusement qu'il n'y a pas de base un schema : PUBLIC_FPT !
Sinon on y retrouverait toute la France !?
GeoBye, Pat
(Autodesk Expert Elite Team)
Hors ligne
#15 Mon 12 November 2012 16:31
- yoyo72
- Participant actif
- Date d'inscription: 9 Jul 2008
- Messages: 101
Re: concanténation de 3 champs
Merci à tous,
Bon...étant fonctionnaire je fais profil bas!!! : D
Mais croyez moi on est pas tous taré...
A bientôt les amisssss
Hors ligne