-1

好的,在我开始之前,很高兴提到我已经在 stackoverflow 和互联网上阅读(并尝试过)无数主题,但对于这个简单的问题似乎没有直接的答案。

所以情况如下:

table1 (id, name)
1,name1
2,name2
3,name3

table2 (id, id_table1, field_name)
1,1,field1
2,1,field2

我想要做的只是在第二个表中有任何与 id_table1 匹配的记录时显示第一个表 id 和它的字段“名称”。我尝试了加入、组、内部加入、左加入,但似乎没有什么能解决我的问题....

预期输出:
id:1 - name:name1

最后尝试的代码:
SELECT * FROM table1 LEFT JOIN table2 ON table1.id = table2.id_table1 GROUP BY table1.id

4

2 回答 2

0

怎么样 select t.* from table1 t where t.id in (select id_table1 from table2)

?

于 2013-04-18T15:56:18.633 回答
0

这应该可以解决您的问题。

select table1.id, table1.name from table1 
inner join table2 on table1.id = table2.id_table1
group by table1.id
于 2013-04-18T16:08:43.090 回答