JeuWeb - Crée ton jeu par navigateur
[regler]calcul à partir de mysql - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [regler]calcul à partir de mysql (/showthread.php?tid=2075)



[regler]calcul à partir de mysql - jo_link_noir - 29-11-2007

bonjours,
alors voilà, je fait un calcul de distance dans ma requête mais le résultat est totalement différent de celui en php Oo

la requête est simple :
Citation :SELECT galaxie, systeme, (ABS(2-systeme)+ABS(2-galaxie)*3) AS distance
FROM meteorite
ORDER BY galaxie,systeme,position;

pour certain valeur de galaxie et système ça passe mais pour d'autre, le résultat est astronomique...

voyez plutôt :
-galaxie = 1
___->système = 3
______->résultat mysql = 2
______->résultat php = 2
___->système = 5
______->résultat mysql = 0
______->résultat php = 0
___->système = 9
______->résultat mysql = 18446744073709551612
______->résultat php = 10
___->système = 12
______->résultat mysql = 18446744073709551608
______->résultat php = 13

par contre quand je fait ABS(système)+ABS(galaxie)*3, là ça fonctionne mais c'est pas vraiment le calcul que je veux Confused
je comprend pas du tout pourquoi une tel différence...

en espérant qu'on puisse m'expliquer, je vous souhaites bonne nuit Smile


RE: calcul à partir de mysql - X-ZoD - 29-11-2007

pour (ABS(2-systeme)+ABS(2-galaxie)*3) avec systeme = 9 j'ai donc
(2-9) + (1*3) = -7 + 3 = -4
sauf si je me gourre quelque part non ?


RE: calcul à partir de mysql - jo_link_noir - 29-11-2007

non, le résultat est toujours positif grace à ABS

Citation :ABS(X)
Retourne la valeur absolue de X.

donc abs(2-9) + abs(1*3) = 7 + 3 = 10 Smile


RE: calcul à partir de mysql - jo_link_noir - 29-11-2007

tinyint(2) pour la galaxie et tinyint(3) pour les systeme


RE: calcul à partir de mysql - X-ZoD - 29-11-2007

ha vi mon cerveau a fait abstraction des abs je sais pas pourquoi Big Grin


RE: calcul à partir de mysql - jo_link_noir - 29-11-2007

yop merci oxman, j'ai comprit pourquoi ça marchais pas, c'étais à cause des attributs que j'avais mi en unsigned. En mettant rien, ça marche bien ^^

bonne journée