djilou Posté 29 Novembre 2005 Partager 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 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Anonymus Posté 30 Novembre 2005 Partager 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à. Lien vers le commentaire Partager sur d’autres sites More sharing options...
djilou Posté 30 Novembre 2005 Auteur Partager Posté 30 Novembre 2005 Merci :-) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant