Mysql
 sql >> Database >  >> RDS >> Mysql

Fare riferimento alle tabelle della query esterna in una sottoquery

Non è questo che cerchi?

SELECT u.username, c._postCount
FROM User u
INNER JOIN (
    SELECT p.user, COUNT(*) AS _postCount
    FROM Posting p
    GROUP BY p.user    
) c ON c.user = u.id
WHERE u.joinDate < '2009-10-10';

Il motivo per cui funzionerà è che la natura del join stesso filtrerà sull'utente. Non è necessario disporre di una clausola WHERE che filtra esplicitamente sull'utente.