Я знаю, что stackoverflow помнит ответ для этого вопроса, но у меня немного другая ситуация. У меня много ячеек во второй таблице, но SQL-запрос получается только первым. Ок, не весь запрос, только тег WHERE.Как заказать sql-запрос по другим значениям таблицы
Пример:
1 стол:
user_id = 1
user_id = 2
2 таблицы:
user_id = 1 | year = 2015 | rating = 55
user_id = 1 | year = 2016 | rating = 10
user_id = 2 | year = 2016 | rating = 50
user_id = 2 | year = 2016 | rating = 5
SQL-запрос:
$query = "SELECT c.*,v.upvotes
FROM ".PREFIX."_users c
LEFT JOIN (SELECT user_id,pol,vid_sporta,year_sport,category,SUM(rating) as upvotes
FROM ".PREFIX."_userrating
GROUP BY user_id
) v
ON c.user_id = v.user_id
WHERE year_sport='2015'
ORDER BY upvotes DESC";
Этот запрос дает мне только одного пользователя, whitch имеет 2015 сначала.
Мне нужен то время как цикл в SQL запросе :) Помогите, пожалуйста :)
В зависимости от того, где расположены поля 'pol, vid_sporta, year_sport, category', выбор их без группировки на них может быть рецептом для катастрофы. ... и он имеет только 1 запись, потому что только один удовлетворяет вашему условию WHERE ..... из-за группы:) – Uueerdo
Каков ваш ожидаемый результат? –
Спасибо :) Но мне нужен только один показ одного пользователя с оценкой этого пользователя. – Twelvee