Soustraction entre deux valeurs !

Résolu/Fermé
freerider_76 Messages postés 29 Date d'inscription jeudi 4 octobre 2012 Statut Membre Dernière intervention 2 juillet 2013 - 26 oct. 2012 à 11:16
freerider_76 Messages postés 29 Date d'inscription jeudi 4 octobre 2012 Statut Membre Dernière intervention 2 juillet 2013 - 26 oct. 2012 à 13:24
Bonjour,

J'ai une table avec à l'intérieur

ref_paire
nom_personne
valeur

je souhaiterais faire une soustraction entre les valeurs de chacune des personnes ayant la même ref_paire ...

Je suis un peu perdu la...

Merci de votre aide =)



5 réponses

Utilisateur anonyme
26 oct. 2012 à 11:34
Bonjour

SELECT t1.ref_paire, t1.nom_personne, t2.nom_personne, ABS(t1.valeur-t2.valeur) FROM  matable t1 JOIN matable t2 ON t1.ref_paire=t2.ref_paire and t1.nom_personne > t2.nom_personne


le t1.nom_personne > t2.nom_personne sert à éviter à la fois d'avoir les couples (personne1, personne1) et les doublons (personne1, personne2) et (personne2, personne1)
1
freerider_76 Messages postés 29 Date d'inscription jeudi 4 octobre 2012 Statut Membre Dernière intervention 2 juillet 2013 3
26 oct. 2012 à 11:42
Oui mais je n'ai qu'une seule table donc la solution ne fonctionne pas car il y a deux tables utilisés dans la requête :/
0
Non, il n'y a qu'une seule table, celle que j'ai appelée matable !!! Par contre, il y a deux alias t1 et t2. Comme tu ne sembles pas connaître les alias, disons que c'est un surnom qu'on donne temporairement à une table pour plusieurs raisons, la raison étant ici justement de faire comme s'il y en avait deux.
L'alias se fait en écrivant matable AS t1 ou matable AS t2, mais comme le AS est facultatif et que je suis fainéant, je ne l'ai pas mis.
0
freerider_76 Messages postés 29 Date d'inscription jeudi 4 octobre 2012 Statut Membre Dernière intervention 2 juillet 2013 3
26 oct. 2012 à 11:55
Très bien merci j'essaye cela tout de suite et je vous tiens au courant merci pour ton explication ! :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
freerider_76 Messages postés 29 Date d'inscription jeudi 4 octobre 2012 Statut Membre Dernière intervention 2 juillet 2013 3
26 oct. 2012 à 13:24
C'est bon j'ai réussi à régler mon problème merci =) voici ma requête finale si jamais :

SELECT t1.ref_paire , ABS(t1.valeur-t2.valeur)
FROM R5_R2 AS t1 INNER JOIN R5_R2 AS t2 ON (t1.numero_personne > t2.numero_personne) AND (t1.ref_paire=t2.ref_paire)
WHERE ABS(t1.valeur-t2.valeur)<2
ORDER BY ABS(t1.valeur-t2.valeur) DESC;
0