PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment joindre deux tables (sous-table principale et plusieurs à une) pour obtenir un seul élément de la deuxième table ?

Si vous utilisez SQL Server, vous pouvez utiliser la clause TOP. S'il s'agit d'autre chose que SQL Server, vous devrez voir si cette base de données offre quelque chose d'équivalent (beaucoup d'entre eux le font). Quelque chose comme ça...

Select * from Main m
left outer join 
(select top 1 * from subtable s
  where s.main_table_id = m.id) q
on q.main_table_id = m.id;

Remarque :C'est pour vous montrer l'idée générale. Je n'ai pas eu l'occasion de l'exécuter, donc quelques changements pourraient être nécessaires, mais le concept est là.