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

Hvordan forbinder man to borde udenfor (hoved- og mange-til-en-underbord) for kun at få ET emne fra det andet bord?

Hvis du bruger SQL Server, kan du bruge TOP-sætningen. Hvis det er noget andet end SQL Server, bliver du nødt til at se, om den database tilbyder noget tilsvarende (mange af dem gør). Noget som dette ...

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;

Bemærk:Det er for at vise dig den generelle idé. Jeg havde ikke en chance for at køre det, så der kan være et par ændringer nødvendige, men konceptet er der.



  1. En til en relation, der involverer flere tabeller

  2. Hvordan tæller man, hvor mange læger der er booket af hver patient?

  3. Hvordan ændrer man en kolonne og ændrer standardværdien?

  4. Hvordan kan vi adskille LEFT OUTER JOIN vs Left Join