Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/04/2005, 08h31   #1
Membre confirmé
 
Avatar de snoop
 
Inscription : novembre 2003
Messages : 354
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : novembre 2003
Messages : 354
Points : 249
Points : 249
Par défaut INSERT avec valeur connue et résultat d'un SELECT...

Bonjour,
Je voudrais faire une insertion dans une table avec une valeur connue et une autre qui soit le résultat d'un select...
J'ai essayé quelquechose comme :
Code :
1
2
 
INSERT INTO table1 (2,result) SELECT result FROM table2 WHERE table3.info=11 AND table3.name=table2.name;
Sachant que je veux insérer la valeur 2 et le résultat de la requete select...
J'ai essayé aussi avec INSERT INTO .... VALUES (....) SELECT ... mais sans résultat.
Si quelqu'un peut m'aiguiller...
Merci
__________________
Snoop
snoop est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/04/2005, 08h47   #2
Membre éclairé
 
Avatar de piff62
 
Inscription : décembre 2003
Messages : 431
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : décembre 2003
Messages : 431
Points : 362
Points : 362
Code :
1
2
 
INSERT INTO table1 (2,SELECT result FROM table2 WHERE table3.info=11 AND table3.name=table2.name);
Et comme ca ca ne fonctionne pas non plus ?

sinon si tu es en pl/sql, tu peux le faire en 2 etape ?
Code :
1
2
3
4
5
6
 
DECLARE
res table2.result%rowtype;
BEGIN 
INSERT result INTO res  FROM table2 WHERE table3.info=11 AND table3.name=table2.name;
INSERT INTO table1 (2,res);
Tiens moi au courant
piff62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/04/2005, 08h54   #3
Membre confirmé
 
Avatar de snoop
 
Inscription : novembre 2003
Messages : 354
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : novembre 2003
Messages : 354
Points : 249
Points : 249
Je viens de trouver...
Code :
1
2
 
INSERT INTO table1 (col1,result) SELECT 2,result FROM table2 WHERE table3.info=11 AND table3.name=table2.name;
(col1,result) : noms des collonnes de table1
2 : valeur à insérer dans la 1ère colonne de table1
result (du SELECT) : valeur à insérer dans la 2ère colonne de table1

C'est pas très logique mais ça marche...

Voilà !
__________________
Snoop
snoop est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h59.


 
 
 
 
Partenaires

Hébergement Web