Выберите и подсчитайте для каждой записи в одном запросе

У меня есть таблицы базы данных: «пользователи» и «результаты». Я хочу просматривать пользователей из таблицы users и подсчитывать конкретные записи каждого отдельного пользователя в результатах таблицы (для подсчета игр и выигрышей). Мой запрос:

$q = "SELECT *, (SELECT count(*)  
                 FROM users, results 
                 WHERE (results.u1 = users.id OR results.u2 = users.id) 
                 AND (results.p1 > 0 OR results.p2 > 0) 
                 AND gid = '$gid' AND users.gender = '$gender') as gp 
      FROM users LEFT JOIN results 
                               ON users.id = results.u1 
                                           || 
                                  users.id = results.u2 
      WHERE gid = '$gid' AND users.gender = '$gender' 
      GROUP BY users.id LIMIT 0, 9";

Это действительно возвращает 9 пользователей, но «gp» показывает мне количество всех записей, но я хочу, чтобы часть gp подсчитывала только записи для каждого отдельного пользователя в цикле и ЗАКАЗЫВАЛА его.

Вы можете помочь мне с этим вопросом? Благодарю вас!

# sorting count
Источник
  • 0
    Добавьте структуру двух таблиц и объясните роль некоторых ключевых столбцов, затем добавьте образцы и ожидаемые данные.
  • 0
    Можете ли вы добавить db-fiddle со своими таблицами и некоторыми данными, чтобы мы могли протестировать: dbfiddle.uk (после создания просто отправьте ссылку на скрипт с полным адресом)
  • 0
    Таблица users содержит: id, пол. Таблица результатов содержит: u1 (идентификатор пользователя один), u2 (идентификатор пользователя два), p1 (точки пользователя 1), p2 (точки пользователя 2). Латс говорит, что в результатах 3 записи. Я хочу проверить, есть ли у результатов таблицы идентификатор таблицы пользователя в столбце u1 или u2. Если я нахожу идентификатор пользователя в столбцах результатов, я хочу считать только этот столбец, а не все остальные. Текущий запрос подсчитывает сразу все записи, но я хочу подсчитать количество найденных записей для каждого пользователя индивидуально.
Codelisting
Codelisting
Популярные категории
На заметку программисту