sql >> Databasteknik >  >> RDS >> Mysql

Med MySql, kan jag sortera en kolumn men har 0 kommit sist?

Du kanske vill prova följande:

SELECT * FROM your_table ORDER BY your_field = 0, your_field;

Testfall:

CREATE TABLE list (a int);

INSERT INTO list VALUES (0);
INSERT INTO list VALUES (0);
INSERT INTO list VALUES (0);
INSERT INTO list VALUES (1);
INSERT INTO list VALUES (2);
INSERT INTO list VALUES (3);
INSERT INTO list VALUES (4);
INSERT INTO list VALUES (5);

Resultat:

SELECT * FROM list ORDER BY a = 0, a;

+------+
| a    |
+------+
|    1 |
|    2 |
|    3 |
|    4 |
|    5 |
|    0 |
|    0 |
|    0 |
+------+
8 rows in set (0.00 sec)


  1. Hur lägger man till ett nytt språk för mysqls felmeddelanden?

  2. Hur hittar man tredje eller nᵗʰ högsta lön från lönetabellen?

  3. PHP:eko antal dubbletter i en tabell av de vanligaste

  4. Hur SQLite Min() fungerar