Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL Сортиране на заявки с числа

Трябва да предадете sku_size_part1 в плувка.

Това ще забави вашата заявка, но ще работи:

$brand = mysqli_real_escape_string($brand);
$result = $mysqli->query("SELECT DISTINCT sku_size_part1
                          FROM sku_data 
                          WHERE sku_brandname = '$brand' 
                          ORDER BY CAST(sku_size_part1 AS FLOAT) DESC");

Това ще забави заявката, тъй като MySQL няма да може да използва индекс за извършване на сортиране, използването на функция предотвратява това.

По-добро решение (ако е възможно) би било да се предефинира sku-size_part1 като десетичен знак (10,2).

-- Make a backup first --
ALTER TABLE sku_data CHANGE sku_size_part1 DECIMAL(10,2); 

(Уверете се, че първият параметър (10) и вторият параметър (2) са достатъчно големи, за да задържат всички възможни стойности.)
Вижте:http://dev.mysql .com/doc/refman/5.0/en/cast-functions.html




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да покажа данни от mysql с помощта на angular.js PHP?

  2. Неправилна стойност на низа при опит за вмъкване на UTF-8 в MySQL чрез JDBC?

  3. mysql и индекси с повече от една колона

  4. Hibernate + MySQL:Как да настроите кодирането utf-8 за база данни и таблици

  5. Мокнете MySQL база данни в Python