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

MySQL ПОРЪЧКА ПО ПОЛЕ с %

Това трябва да ви даде най-голям контрол над него:

order by
  case left(positions.colleague_position_id, 1)
    when 'A' then 1
    when 'F' then 2
    when 'T' then 3
    when 'S' then 4
    when 'C' then 5
    else 6
  end, positions.colleague_position_id

Това е така, защото можете да изпратите всички несъвпадащи стойности на желаната от вас позиция (в този случай в края). field() функцията ще върне 0 за несъвпадащи стойности и ще ги постави в горната част на набора от резултати дори преди тези, започващи с A .

Освен това можете да поръчате и по positions.colleague_position_id както направих в примера, така че за много positions.colleague_position_id които започват с една и съща буква, те пак ще бъдат подредени.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да напиша заявка за сравняване на текущата дата с времеви печати created_at в базата данни?

  2. mysql вмъкването след изтриването е неуспешно поради дублиран запис

  3. PHP/MySQL Критичен раздел

  4. Две генерирани ценности в доктрината

  5. Как мога да накарам emacs sql-mode да използва конфигурационния файл на mysql (.my.cnf)?