@Frapsy

Каким образом лучше формировать выборку?

Есть сущности, у каждой есть атрибуты vip и rating. Сейчас в vip хранится timestamp метка времени, до которого сущность имеет VIP статус, в rating хранятся голоса.

При выводе списка основным сортировочным атрибутом является rating, но, поля, где vip != 0 нужно вывести первыми, также сортируя по rating.

Вопрос: можно ли решить эту задачу, не разбивая vip на 2 атрибута с флагом и временем окончания?

vip desc, rating desc пробовал, не то
  • Вопрос задан
  • 2232 просмотра
Решения вопроса 1
aenikitin
@aenikitin
Инфраструктурный администратор
выберите таблицу сначала ту где vip != 0 и отсортируйте ее по rating
а потом через UNION добавьте вторую выборку где vip = 0 и тоже отсортируйте ее по rating

будет что то вроде
SELECT vip,rating FROM your_table WHERE vip != 0 ORDER BY raring
UNION
SELECT vip,rating FROM your_table WHERE vip = 0 ORDER BY raring
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы