PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

SQL:controllo di quanti record vengono restituiti

Ecco qua (non testato):

SELECT movie.id, movie.title, star.name, star.name_url, dir.name, 
       dir.name_url, genre.name, genre.name_url 
FROM 
        (SELECT * FROM movie WHERE movie.id > 0 ORDER BY movie.id LIMIT 10) movie
        LEFT JOIN actor 
             ON (movie.id = actor.movie_id) 
        LEFT JOIN person AS star 
             ON (actor.person_id = star.id) 
        LEFT JOIN director 
             ON (movie.id = director.movie_id) 
        LEFT JOIN person AS dir 
             ON (director.person_id = dir.id) 
        LEFT JOIN genre_classification 
             ON (movie.id = genre_classification.movie_id) 
        LEFT JOIN genre 
             ON (genre_classification.genre_id = genre.id)

Modifica:inserendo tutte le tue condizioni nella sottoselezione, non puoi controllare quali dati dalla tabella di origine movie verrà utilizzato per il JOIN. Per quanto riguarda le prestazioni, anche questo dovrebbe essere molto più veloce.