djilou Posté 29 Novembre 2005 Posté 29 Novembre 2005 Bonjour j'ai un probleme avec ma base de donnée: Jai une table avec 2 colonnes, quand je lance la requête suivante SELECT colonne1, colonne2 FROM Ma_table ORDER BY (colonne1-colonne2) DESC LIMIT 10 Le résultat affiché nest pas le bon ! Au lieu dafficher les lignes de la plus grande valeur à la plus petite Ça maffiche les lignes en désordre pas dans lordre. PS : Si je change lopération de soustraction par l'addition le résultat est le bon. Ce problème est survenu après un changement de serveur récemment. Version de Mysql : 4.1.12 Version de Mysql de lancien serveur : 4.0.10a
Anonymus Posté 30 Novembre 2005 Posté 30 Novembre 2005 La requète n'est pas bonne. Si tu veux les lignes de la plus grande à la plus petite, il te suffit de mettre 'DESC'. Si tu veux ordonner suivant plusieurs champs, tu peux les ajouter suivis d'une virgule. Ca te donnera ceci : ORDER BY colonne1, colonne2 DESC Maintenant, si tu veux effectuer une opération mathématique, il te faudra l'effectuer dans la clause SELECT, ainsi : SELECT colonne1,colonne2, SUM(colonne1,colonne2) AS somme Auquel cas tu peux rappeler l'opération, grace à l'alias dont tu l'as assigné, ainsi : ORDER BY colonne1, colonne2, somme DESC Voilà.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant