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).

#1 15/12/2009 18:45:49

mich30
Membre

probleme requete

j'ai un champ bati_ok quand le id_parc est trouvé je veux le
mettre dans le champ bati_ok mais ca ne marche pas
comment faire message
ERROR:  argument of WHERE must be type boolean, not type character varying
(Notes le select fonctionne)

-- marche pas
update exemple.parcelles_annecy SET bati_ok=true
where
(
select id_parc from exemple.parcelles_annecy  a
where id_parc in (select id_parc from exemple.parc_annecy_bati )
)

merci

Hors ligne

#2 15/12/2009 19:11:02

gleu
Administrateur

Re : probleme requete

update exemple.parcelles_annecy SET bati_ok=true
where exists
(
select id_parc from exemple.parcelles_annecy  a
where id_parc in (select id_parc from exemple.parc_annecy_bati )
)

Guillaume.

Hors ligne

#3 16/12/2009 10:12:26

mich30
Membre

Re : probleme requete

ok merci

Hors ligne

#4 16/12/2009 10:28:24

mich30
Membre

Re : probleme requete

ca marche pas
dans parcelles_annecy j'ai 5000 enregistrements
dans cette condition
select id_parc from exemple.parcelles_annecy  a
where id_parc in (select id_parc from exemple.parc_annecy_bati )
j'ai 2000 enregistrements

et le update mets bati_ok=true sur les 5000 enregistrements
je ne comprends pas
merci

update exemple.parcelles_annecy SET bati_ok=true
where exists
(
select id_parc from exemple.parcelles_annecy  a
where id_parc in (select id_parc from exemple.parc_annecy_bati )
)

Hors ligne

#5 16/12/2009 10:45:54

wilka
Membre

Re : probleme requete

update exemple.parcelles_annecy SET bati_ok=true
where id_parc in( select id_parc from exemple.parc_annecy_bati )

Hors ligne

#6 16/12/2009 10:46:22

Marc Cousin
Membre

Re : probleme requete

Si c'est le cas c'est normal : exists teste l'existence d'au moins un enregistrement de la subquery. Dans ce cas, je présume que ce que tu voulais c'est ?

update exemple.parcelles_annecy SET bati_ok=true
where id_parc IN
(
select id_parc from exemple.parcelles_annecy  a
where id_parc in (select id_parc from exemple.parc_annecy_bati )
)

Marc.

Hors ligne

#7 16/12/2009 10:50:56

mich30
Membre

Re : probleme requete

c'est exact merci je me suis embrouillé les pinceaux
merci marc

Hors ligne

#8 16/12/2009 10:53:45

mich30
Membre

Re : probleme requete

merci wilka aussi  !! pour l'allégement de l'ecriture)

Hors ligne

Pied de page des forums