2014-08-30 46 views
0
table1 
id firstname 
------------- 
1 Elon 
2 Steve 


table2 
id profession 
------------- 
1 Entrepreneur 
2 Engineer 


table3 
firstname profession 
------------- 
1 2 
2 1 

需要的结果是:如何从一个MySQL查询中的不同表中进行选择?

firstname profession 
------------- 
Elon Engineer 
Steve Entrepreneur 

如何从一个MySQL查询不同的表选择? 如何从一个MySQL查询中的不同表中进行选择?

+1

: //www.google.co.in/?gfe_rd=cr&ei=cHoBVLKOAYfW8gfqqYDoCw&gws_rd=ssl#q=How+can+I+select+from+different+tables+in+one+MySQL+query%3F – gvgvgvijayan 2014-08-30 07:17:29

+0

在相关中使用JOIN列? – hd1 2014-08-30 08:35:52

+0

使用jois:左,右或内部 – 2014-08-30 08:40:44

回答

1

此声明应该给你你需要的结果。

select t1.firstname, t2.profession from table1 t1 join table3 t3 on t1.id=t3.firstname join table2 t2 on t3.profession = t2.profession 
+0

#1146 - 表'test.t2'不存在 – user2429282 2014-08-30 07:35:09

+0

@ user2429282在查询中产生错误,您可以再试一次吗? – Jens 2014-08-30 07:37:05

+0

返回空::( – user2429282 2014-08-30 07:41:24

0

你可以这样做:

SELECT t1.firstname, t2.profession 
    FROM table1 as t1 
    LEFT JOIN table3 as t3 ON t1.id = t3.firstname 
    LEFT JOIN table2 as t2 on t2.id = t3.profession 

这一个工程,要在这里请学习一些SQL查询,如果您发布在谷歌搜索的问题意味着你得到很多帮助HTTPS之前测试

+0

#1054 - '字段列表'中的未知列't2.profession' – user2429282 2014-08-30 08:19:34

+0

比你没有列用这个名字,为什么你不给我们: describe table1; describe table2; describe table3; – 2014-08-30 08:22:57

+0

我编辑我的帖子,这个查询已经过测试,它的工作原理 – 2014-08-30 08:30:14

相关问题