Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 01/02/2010 12:44:38
- mich30
- Membre
probleme sur requete
update batdescr_paca set id_parc = p2.id_parc from batdescr_paca p1, batid_paca p2 where trim(p1.invar2) = trim(p2.invar2);
suite a cette requete j'ai cette erreur
comment la contourner
merci
ERROR: could not write block 672367 of temporary file: No space left on device
HINT: Perhaps out of disk space?
Hors ligne
#2 01/02/2010 14:38:25
- Marc Cousin
- Membre
Re : probleme sur requete
Sans le plan, c'est difficile de répondre.
Mais j'ai l'impression qu'il manque un critère de jointure à la requête : qu'est ce qui raccorde le premier batdescr_paca avec le reste de la requête ?
La requête ne devrait-elle pas être :
update batdescr_paca p1 set id_parc = p2.id_parc from batid_paca p2 where trim(p1.invar2) = trim(p2.invar2);
Ensuite un autre point : si il faut faire un trim sur invar2 dans les 2 tables, c'est probablement que la colonne devrait être trimmée avant insertion en base… en l'état, postgres ne peut pas utiliser l'index sur invar2, d'où l'utilisation d'espace temporaire.
Marc.
Hors ligne
#3 01/02/2010 17:38:43
- mich30
- Membre
Re : probleme sur requete
ok merci j'ai enlevé les trim
Hors ligne
Pages : 1