使用SELECT命令加入

时间:2013-03-15 08:57:10

标签: mysql sql select join

我一直在寻找并尝试加入两张桌子以获得一个结果,但没有运气。 (是新手)

以下是该方案:

表T1

ID | t1_name | **t1_value**

表T2

ID | t2_something | **t2_name** | t2_more | t2_etc

我要做的是SELECT查询,以便将结果传递给ECHO t1_value

来自 t2_name 等于 t1_name ,然后将 t1_value 返回给ECHO。

这些是基于每个单独的“t2 ID”(100 + ID)有自己的结果。

我确信这是一个简单的解决方案,而且我在加入时所做的所有阅读和研究似乎都无法理解它。也许过度阅读......

如果你能提供解决方案/帮助,(以及它如何运作,以便下次我可以学习) 这将是值得赞赏的。

5 个答案:

答案 0 :(得分:2)

JOIN条件为t1.t2_name = t2.t2_name的两个表,然后在SELECT子句中选择您要选择的内容。

类似的东西:

SELECT
  t2.ID,
  t1.t1_value,
  ...
FROM t1
INNER JOIN t2 ON t1.t1_name = t2.t2_name;

您可能还需要查看不同类型的JOIN,有关详情,请参阅此处:

答案 1 :(得分:1)

尝试此查询

select t1.t1_value
from t1
inner join t2 on t1.t1_name=t2_name

如需更多学习,请参阅 INNER JOIN

不同类型的 JOIN

VISUAL REPRESENTATION OF JOIN

答案 2 :(得分:0)

Select t1_value from T1, T2 where T1.t1_name = T2.t2_name

答案 3 :(得分:0)

SELECT t1_name.t1, t2_name.t2 FROM t1, t2  WHERE t1.t1_name = t2.t2_name

这应该按预期工作,只是为了澄清你也可以使用INNER JOIN

引用的{{1}}语法

答案 4 :(得分:0)

只需连接两个表t1和t2即可实现。

SELECT
      t1.Name,
      t1.value
FROM t1,t2 
WHERE t1.t1_name = t2.t2_name