Jestem dość słaby w SQL i się zastanawiam czy mogę zrobić jednym poleceniem taki zabieg: Mam tabelę 1 użytkowników, tradycyjne pola: 'id','name', 'password', etc. Mam tabelę 2 z wynikami użytkowników, pola: 'id', 'idUser', 'score1', 'score2', etc. Użytkownik może mieć w tej tabeli od 0 do kilkudziesięciu rekordów. Chciałbym wydobyć w jednym poleceniu listę użytkowników z tabeli 1 oraz liczbę rekordów w tabeli 2 dla każdego użytkownika. Coś w tym stylu tylko mi nie wychodzi:
SELECT users.*, COUNT(scores.idUser) FROM users LEFT JOIN scores ON users.id = scores.idUser
Jestem dość słaby w SQL i się zastanawiam czy mogę zrobić jednym poleceniem taki zabieg:
Mam tabelę 1 użytkowników, tradycyjne pola: 'id','name', 'password', etc.
Mam tabelę 2 z wynikami użytkowników, pola: 'id', 'idUser', 'score1', 'score2', etc. Użytkownik może mieć w tej tabeli od 0 do kilkudziesięciu rekordów.
Chciałbym wydobyć w jednym poleceniu listę użytkowników z tabeli 1 oraz liczbę rekordów w tabeli 2 dla każdego użytkownika. Coś w tym stylu tylko mi nie wychodzi:
SELECT users.*, COUNT(scores.idUser)
FROM users LEFT JOIN scores ON users.id = scores.idUser
SELECT users.*, COUNT(scores.idUser)
FROM users LEFT JOIN scores ON users.id = scores.idUser
GROUP BY users.id