Предполагается подсчитать количество записей SQL, пока не будет достигнуто определенное значение в одном из столбцов таблицы. Использование Asp /VBscript.
Не уверен, как сформулировать запрос.
Что я пробовал, так это, конечно, не работает. Я хотел бы организовать результаты по столбцу «точки» в порядке убывания, сгруппированному по city_id «12500». Затем мне нужно подсчитать количество записей, пока не будет найден конкретный "member_id". Некоторые значения «точек» также могут быть одинаковыми, что может привести к неправильному счету. Аналогичные значения баллов следует игнорировать.
ДБ с именем "рейтинга" выглядит следующим образом:
id | member_id | city_id | points
1 | 1 | 12500 | 2
3 | 2 | 12500 | 5
4 | 34 | 800 | 1
5 | 14 | 12500 | 14
6 | 6 | 600 | 12
7 | 11 | 12500 | 11
8 | 12 | 12500 | 5
Например, если я хочу найти рейтинг для member_id "2", который принадлежит к city_id "12500", правильное конечное значение из функции Count должно быть 3. Это потому, что member_id "2" имеет третье по величине значение в city_id "12500", даже после учета привязки в пунктах с member_id "12".
Это все, что я могу себе представить, потому что я ни в коем случае не профессионал, и я знаю, что ему многое не хватает!
member_id = 2
city_id = 12500
SELECT Count() as city_ranking FROM (SELECT * from rankings WHERE city_id='"&city_id&"' AND member_id <> '"&member_id&"' ORDER BY points DESC)