Join one row to multiple rows in another table

前端 未结 3 1446
无人共我
无人共我 2020-12-24 12:32

I have a table to entities (lets call them people) and properties (one person can have an arbitrary number of properties). Ex:

People

Name  Age
---         


        
3条回答
  •  南笙
    南笙 (楼主)
    2020-12-24 12:55

    You can use INNER JOIN to link the two tables together. More info on JOINs.

    SELECT *
    FROM People P
    INNER JOIN Properties Pr
      ON Pr.Name = P.Name
    WHERE P.Name = 'Joe' -- or a specific age, etc

    However, it's often a lot faster to add a unique primary key to tables like these, and to create an index to increase speed.

    Say the table People has a field id
    And the table Properties has a field peopleId to link them together

    Then the query would then look something like this:

    SELECT *
    FROM People P
    INNER JOIN Properties Pr
      ON Pr.id = P.peopleId
    WHERE P.Name = 'Joe'

提交回复
热议问题