Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 31/10/2009 20:13:03
- martinf
- Membre
Somme de deux enregistrements
Bonjour
À partir de la table suivante:
id, source, target, prix
1, 22, 23, 400
2, 23, 24, 1000
3, 25, 26, 500
Comment faire la somme de deux enregistrements dont la source est le target d'un autre ou l'inverse)?
(somme de id 1 et 2 avec comme résultat un seul enregistrement)?
Merci
Martin F
Hors ligne
#2 31/10/2009 20:19:16
- gleu
- Administrateur
Re : Somme de deux enregistrements
SELECT s.prix+t.prix AS somme
FROM table as s, table as t
WHERE s.source=t.target
AND s.id=1
AND t.id=2
Guillaume.
Hors ligne
#3 31/10/2009 20:22:13
- martinf
- Membre
Re : Somme de deux enregistrements
D'accord, mais supposons qu'il y a des milliers d'enregistrements...?
Hors ligne
#4 01/11/2009 00:06:37
- gleu
- Administrateur
Re : Somme de deux enregistrements
Il faudrait un peu développer votre problème, car je ne vois pas le soucis.
Guillaume.
Hors ligne
#5 01/11/2009 20:09:24
- martinf
- Membre
Re : Somme de deux enregistrements
Oui, j'avais simplifié à l'extrême mais en réalité mon problème est plus complexe. Je travail avec l'extension PostGIS, mon problème et donc... géographique. Je dois joindre des lignes qui se touchent mais arrêter la jointure à la rencontre d'une troisième ligne. Donc, on joint deux lignes par le source de l'un et le target de l'autre à condition que ces sources et targets comptent un total de 2 (dans l'image jointe, on exclu le source-target 27 dans la jointure de 2 lignes pcq'on le retrouve plus de 2 fois (intersection)
Merci
Martin F
Hors ligne
#6 02/11/2009 10:02:19
- Marc Cousin
- Membre
Re : Somme de deux enregistrements
Pas évident comme problème, et à mon avis assez peu 'relationnel'. J'entends par là qu'il s'agit plutôt d'opérations de type 'graphe'. Vous aurez certainement plus vite fait d'en faire une procédure PL. Vous voulez factoriser votre graphe ?
Marc.
Hors ligne
Pages : 1