我有以下表格:
播放器
- ID
- 姓名
物品
- player_id
- item_id
如何从 Player 表中选择所有玩家,其中包含 Player.id=Item.player_id 的 Item 表中的所有项目?
我需要两个查询吗?或者可以JOIN
解决这个问题吗?
一个简单的连接工作。
SELECT DISTINCT P.ID, P.Name
FROM Player P
INNER JOIN Item I on (I.player_id = P.id)
方法 01- 如果您只想要特定玩家的物品(玩家 =3)
// 3 不是固定的,它可以是任意数量/ID 的玩家
SELECT * FROM ITEM
WHERE PLAYER_ID = 3
方法 02-如果你想显示带有物品的玩家
SELECT * FROM PLAYER P
INNER JOIN ITEM I ON P.ID = I.PLAYER_ID
但正如克里斯·莱弗利的帖子一样。由于父子表的关系,玩家wrt项目的多个数据是合乎逻辑的:)