sql >> Database teknologi >  >> RDS >> Mysql

Bestil efter pris returnerer en mærkelig ordre i MySQL

Din price kolonne skal have tegnet CHAR() or VARCHAR() type i stedet for en numerisk type. Cast den som en DECIMAL i ORDER BY :

Select * From table ORDER BY CAST(price AS DECIMAL(10,2)) DESC

Den rigtige løsning på dette ville være at ændre price datatype til en korrekt numerisk type.




  1. 4 tabelformede outputtilstande i SQLite

  2. Ude af stand til at indsætte data i databasen efter formularindsendelse ved hjælp af php og jquery ajax

  3. Formater MySQL-kode inde i PHP-strengen

  4. mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows osv... forventer, at parameter 1 er ressource