|
|
|
Сортировка по кол-ву определенных значений в столбце
|
|||
|---|---|---|---|
|
#18+
У меня есть пара таблиц. -------------- Elements -------------- id | name и -------------- Ratings -------------- id | element_id | score В столбец score записываются баллы от пользователей. Значения там могут быть от 1 до 3. Мне нужно сделать следующую сортировку: Сначала показать элементы с наибольшим количеством 3 (троек). Если кол-во 3 (троек) совпадает у элементов, то считаем 2 (двойки) и т.д. Как это можно сделать одним запросом? При этом у меня идет: group by Elements.id Т.е. дубликаты Elements - не нужны. Жаль не работает такой вариант: COUNT (score=1) AS count_1, COUNT (score=2) AS count_2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2020, 01:03 |
|
||
|
Сортировка по кол-ву определенных значений в столбце
|
|||
|---|---|---|---|
|
#18+
rubiks Жаль не работает такой вариант: COUNT (score=1) AS count_1, COUNT (score=2) AS count_2 Но лучше через SUM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2020, 02:47 |
|
||
|
Сортировка по кол-ву определенных значений в столбце
|
|||
|---|---|---|---|
|
#18+
rubiks Мне нужно сделать следующую сортировку: Сначала показать элементы с наибольшим количеством 3 (троек). Если кол-во 3 (троек) совпадает у элементов, то считаем 2 (двойки) и т.д. Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2020, 07:18 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=21&tid=1828576]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 154ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...