Порядок по кейсу и номеру - PullRequest
0 голосов
/ 22 октября 2018


Это мой запрос:

SELECT * FROM `players` 
WHERE `team` = '$team' 
ORDER BY `spot` ASC, 
CASE WHEN 
`spot` LIKE '%LW%' THEN '1' 
WHEN `spot` LIKE '%C%' THEN '2' 
WHEN `spot` LIKE '%RW%' THEN '3' 
END

Моя цель - заказать его по:

  • 1LW
  • 1C
  • 1RW
  • 2LW
  • 2C
  • 2RW

Я пытаюсь понять, как этого добиться.Вот как выглядит моя таблица: table

1 Ответ

0 голосов
/ 22 октября 2018

Попробуйте ниже

SELECT * FROM `players` 
WHERE `team` = '$team' 
ORDER BY cast(spot as unsigned),
CASE WHEN 
`spot` LIKE '%LW%' THEN '1' 
WHEN `spot` LIKE '%C%' THEN '2' 
WHEN `spot` LIKE '%RW%' THEN '3' 
END
...