PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#2 Re : Général » requête sur l'intitulé d'un champ » 16/03/2012 13:03:12

C'est bien dommage sad.
Merci pour vos réponses !

Sauriez vous où il est possible de trouver des ressources ou des cours en ligne sur pl/pgsql ? je ne trouve des éléments que sur pl/SQL qui semble un peu différent comme langage.

#3 Re : Général » requête sur l'intitulé d'un champ » 16/03/2012 12:38:25

Bonjour,

fredo a écrit :

SELECT attname FROM pg_attribute WHERE attname LIKE 'p08%' AND attrelid = ( SELECT oid FROM pg_class WHERE relname = 's_com_eco_empl' );

C'est pas exactement ce que je voulais obtenir. Je veux faire afficher les valeurs de certains champs, ceux qui commencent par "p08".
Dans l'esprit, la requête serait :
SELECT p08* FROM s_com_eco_empl

#4 Général » requête sur l'intitulé d'un champ » 15/03/2012 17:07:52

marc.stx
Réponses : 8

Bonjour,

J'ai une requête qui est sûrement simple, mais je ne sais pas l'écrire.

Soit la table :

CREATE TABLE s_com_eco_empl
(
  com ,
  p08_pop1564 ,
  p08_f1564 ,
  p08_act1564 ,
  p08_actocc1564 ,
  c08_factocc1564 ,
  c08_emplt ,
  c08_actocc ,
  d99_emplt ,
  d08_emplt_sal ,
etc...
)
comment faire pour ne sélectionner que les champs qui commencent par "p08" ?
Merci pour votre aide.

Marc

#5 Re : PL/pgSQL » Supression de tables » 03/02/2012 19:40:32

Hélas je n'ai encore rien fait, je ne comprends vraiment rien à pl/sql ! sad
Je suppose juste que la commande que je veux réaliser passe par une fonction (ou peut être par un trigger).
Je m'explique : j'ai créé des tables à la volée à l'aide d'un ETL, mais j'ai fait une erreur de configuration... et 400 tables ont été intégrées d'un seul coup dans ma base. Ces tables ayant le même préfixe, j'aimerai pouvoir les supprimer toutes en même temps. Si cela est possible.

#6 PL/pgSQL » Supression de tables » 02/02/2012 16:20:15

marc.stx
Réponses : 3

Bonjour,

Ayant du mal à comprendre le pl/pgsql, je fais appel à votre aide.

Comment faire pour supprimer dans une base toutes les tables qui commencent par une lettre donnée ?

CREATE OR REPLACE FUNCTION drop_table...

En vous remerciant !

Marc

PS > modérateur : je me suis trompé de forum à placer dans pl/pgsql

#7 Re : Général » COPY TO Permission denied » 15/09/2011 09:55:42

Bonjour et merci pour votre réponse

Étant un peu néophyte en la matière, comment puis-je faire pour configurer le serveur PostgreSQL ? J'ai fait un tour dans "outils d'administration / sources ODBC", et je ne trouve rien qui ressemble à une config.

MSC

#8 Général » COPY TO Permission denied » 13/09/2011 16:57:28

marc.stx
Réponses : 3

Bonjour,

Lors d'un COPY TO, voici le message qui m'est renvoyé :

could not open file "C:/monfichier.csv" for writing: Permission denied

Ce qui m'étonne c'est que je peux faire sans problème un COPY FROM ...?

De plus je suis loggé en tant qu'administrateur ??

Si quelqu'un peut m'indiquer d'où vient le problème.
En vous remerciant par avance.

MSC

#9 Re : Général » Trier et sauvegarder une table » 08/07/2011 14:27:38

Parenthèse plus virgule entre CREATE et INSERT voilà les erreurs.
Mon SQL est encore balbutiant...

Merci pour votre aide.

#10 Re : Général » Trier et sauvegarder une table » 08/07/2011 12:40:06

Visiblement la syntaxe n'est pas bonne ? ça bloque sur le "LIKE"

CREATE TABLE new_table LIKE old_table
INSERT INTO new_table SELECT * FROM old_table ORDER BY ma_variable

#11 Re : Général » Trier et sauvegarder une table » 08/07/2011 12:22:49

Ok, en fait ce n'est pas vraiment possible de le faire directement.
Merci beaucoup.

#12 Général » Trier et sauvegarder une table » 08/07/2011 11:22:20

marc.stx
Réponses : 5

Bonjour,

J'essaye d'effectuer un opération toute simple, mais je n'y arrive pas.
Je voudrai trier une table en fonction d'une variable et enregistrer la table.
Voici le script utilisé :

SELECT * FROM ma_table ORDER BY "ma_var" FOR UPDATE

La table est bien triée, mais elle n'est pas sauvegardée triée.

#13 Re : PL/pgSQL » Requete sur 2 tables » 15/04/2010 17:54:23

Merci bq, tout fonctionne.
J'aurai appris la fonction CASE...

#14 Re : PL/pgSQL » Requete sur 2 tables » 15/04/2010 17:05:24

Ne faut il pas faire un GROUP BY id1 pour avoir le nombre de id2 par id1 ?

Je travaille sur des données cadastrales.
id1 est l'identifiant de parcelle et id2 celui des bâtiments.
je souhaite avoir un tableau avec :
n° de parcelle [id1], le nombre total de logements [count (id2)] , le nombre total de logements vides [type=vide]

Je suis preneur d'adresse pour de bons tutoriels.

Merci

#15 PL/pgSQL » Requete sur 2 tables » 15/04/2010 14:56:00

marc.stx
Réponses : 3

Bonjour,

Je débute en SQL et je souhaiterai avoir une petite aide concernant une requête relativement simple (je pense).

J'ai 2 tables :
T1 contenant les variables ID1, ID2
T2 contenant les variables ID2, NOM, TYPE

Je souhaiterai que ma requête me retourne la table TT contenant :

ID1 , nombre de ID2 par ID1, si NOM=TOTO et si TYPE=H

Merci pour vos réponses

#16 Re : Général » Changement de type de champ » 28/10/2009 17:44:52

Bonsoir et merci,
totalement béotien en SQL, je patauge et cherche souvent midi à 14h.

#17 Général » Changement de type de champ » 28/10/2009 16:58:52

marc.stx
Réponses : 2

Comment changer le type d'un champ dans une table temporaire ?

J'ai une table "matable" enregistrée en dur avec un champ "toto" de type : character(4)

Je souhaite créer une table temporaire avec le champ "toto" de issus de "matable" mais de type : integer

Est-ce possible ? et comment...

#18 Re : Général » Table non sélectable » 20/10/2009 16:54:09

Effectivement, ma table était en majuscule.
" MERCI ! "

#19 Re : Général » Table non sélectable » 20/10/2009 12:49:42

La sélection me renvoie les champs "schemaaname", "tablename", tableowner"...

Effectivement le nom de ma table est en majuscules.

#20 Re : Général » Table non sélectable » 20/10/2009 09:54:13

Mais si "matable" existe bien puisque je peux visualiser les données, l'onglet statistiques de pgAdmin m'indique qu'il y a 571059 lignes insérées...
Y-a-t-il une autre méthode pour déterminer si ma table existe ?

#21 Général » Table non sélectable » 19/10/2009 17:50:17

marc.stx
Réponses : 8

Lorsque je lance la requête

SELECT * FROM matable

J'ai le message d'erreur suivant.

ERROR:  relation "matable" does not exist

A quelle relation fait référence ce message d'erreur ?

#22 Re : Général » [RESOLU] Import de données » 07/10/2009 14:09:59

Merci, ça marche. En fait je mettais : WITH CSV HEADER DELIMITER  AS ';'   ;

#23 Général » [RESOLU] Import de données » 07/10/2009 12:21:17

marc.stx
Réponses : 4

Je souhaite importer des données dans une base, mais j'ai un soucis...
Le fichier que je désire importer n'est pas en CSV, mais en .txt séparateur ";"

J'utilise donc la formule suivante :

CREATE TABLE population
(
  codgeo character(5) NOT NULL,
  dep character(3),
  arr character(4),
  population integer,
  CONSTRAINT pk_population PRIMARY KEY (codgeo)
)
WITH (OIDS=TRUE);

ALTER TABLE population OWNER TO postgres;

COPY population FROM 'c:/import/population.txt'

WITH DELIMITER  AS ';'   ;


Mon problème, c'est qu'il importe la première ligne contenant les en-têtes.
Comment faire pour qu'il ne commence l'importation qu'à partir de la seconde ligne.
Je précise que mon fichier fait 18 millions de lignes et qu'il n'est pas possible de l'ouvrir avec un éditeur de texte pour en supprimer la première.

Pied de page des forums

Propulsé par FluxBB