首页 > 解决方案 > SQL查询让我对连接有点困惑

问题描述

我有 2 个值需要查询一个表,该表从该表返回一个 ID,然后查询另一个表以获取名称,但我不知道连接是如何工作的,我自己都搞糊涂了。我想做的是如下;

$ID = 400
$ItemID = 300


Table: Items
---

where - Items.ID = $ID
where - Items.ItemID = $ItemID

Return: Items.SourceID


Table: Source
---

where - Source.ID = Items.SourceID

Return: Source.Name

我拥有的 2 个值位于顶部,然后使用这 2 个值,我需要查询 Items 表以返回 source.id,然后查询 Source 表以获取其实际名称。

我的“失败”查询如下;

SELECT Items.ID, Items.ItemID, Source.ID, Source.Name
FROM Items
INNER JOIN Source ON Source.ID = Source.ID

任何有助于实现这一目标的帮助将不胜感激。

标签: mysqlsql

解决方案


Source ON Source.ID = Source.ID可能是您的问题,根据您可能想尝试的解释:

SELECT Items.ID, Items.ItemID, Source.ID, Source.Name
FROM Items
INNER JOIN Source ON Source.ID = Items.SourceID

推荐阅读