PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

SQL:Контролиране на броя върнати записи

Ето го (непроверено):

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)

Редактиране:Като поставите всичките си условия в подизбора, не можете да контролирате какви данни от изходната таблица movie ще се използва за JOIN. По отношение на производителността, това също трябва да бъде много по-бързо.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да изградим нормализирана таблица от един денормализиран текстов файл?

  2. eclipselink jpa генерира заявки за преброяване, използвайки COUNT(id) вместо COUNT(*)

  3. SELECT .. INTO за създаване на таблица в PL/pgSQL

  4. Как да вмъкна стойност в оператор select с помощта на JavaScript, по-специално когато използвам express и postgres?

  5. Агрегиране по средна стойност в SQL