Intereting Posts
Получение данных из базы данных MySQL в выпадающий список html Doctrine2 – множественная вставка одним выстрелом Идентификатор страницы WordPress без идентификатора php: try-catch не поймать все исключения Ошибка в строке 2 в столбце 1: дополнительный контент в конце документа Эффективный способ передачи переменных из PHP в JavaScript «Неустранимая ошибка: вызов неопределенного метода PHPUnit_Util_Filter :: addfiletofilter () в / usr / bin / phpunit в строке 48» Как я могу запретить пользователям доступ к файлам include? Как я могу использовать простой раскрывающийся список в окне поиска GridView :: widget, Yii2? jQuery / PHP mail отправляет простой способ? Переадресация цикла в laravel Как вызвать внешний файл javascript в PHP? Как использовать модуль с PHP для добавления класса CSS в сетку изображений в зависимости от двух разных шаблонов? конвертировать txt или doc в pdf с помощью php Модули тестирования Symfony2 с ограничениями

Закажите более одного столбца с помощью mysql

Ниже показан мой запрос, который мне нужно заказать с помощью этих трех столбцов. Это для комплексного поиска. Если я использовал один из них, он отлично работает. Но, управляя более чем одним, он не упорядочивает должным образом.

РЕДАКТИРОВАТЬ

На самом деле мне нужно, премиальные записи должны быть на первых позициях вместе с большим количеством избранных, а также элитные клиенты имеют больше приоритетов. Все эти работы условно

1) Сначала появятся новые фавориты

2) Но премия будет рассмотрена

3) Если базовый будет иметь 5 фаворитов, он не будет нажимать вверх, а основной – с небольшим приоритетом

4) Также элита имеет хороший приоритет

SELECT `Driver`.`id` , `Driver`.`login_id` , `Login`.`profile_type`, ................. ORDER BY `fav_count`, FIELD( `Login`.`profile_type` , "premium", "basic" ) , `Driver`.`is_elite` ASC 

Результат выборки, который я ожидал

 is_elite| profile_type | fav_count ________|_____________________|____________ 1 | premium | 4 1 | premium | 3 1 | premium | 2 1 | premium | 1 0 | basic | 5 0 | basic | 0 

Пожалуйста, посоветуй мне . благодаря

Related of "Закажите более одного столбца с помощью mysql"

Если вы хотите, чтобы вы указали вы, вам необходимо изменить порядок значений в ORDER BY:

 ORDER BY `Driver`.`is_elite` DESC, FIELD( `Login`.`profile_type` , "premium", "basic" ) DESC, `fav_count` DESC 

Примечание. Для всех столбцов сортировки также требуется спуск (DESC). Каждый из них сортируется по самому крупному.

неуверенный в своем вопросе, но это дает порядок, который вы показываете в примере.

 order by profile_type desc, fav_count desc 

Сделайте ORDER BY примерно так:

 ORDER BY `table`.`is_elite`, `table`.`profile_type`, `table`.`fav_count` DESC 

Это будет упорядочено так, как вы ожидаете (насколько я могу видеть из кода, который вы указали).

Из результата примера вы ожидали, что он выглядит так, как вы хотели использовать:

 ORDER BY FIELD( `Login`.`profile_type` , "premium", "basic" ), `fav_count` DESC, `Driver`.`is_elite` ASC 

Но в лучшем случае это спекулятивно, ваш вопрос не был сформулирован очень хорошо.