[英]select from one mysql table where ids match results from select of another mysql table
我知道我可以在PHP中完成此操作,但是我确实需要在一个查询中使用它,以便于分页。 我有2张桌子,如下所示:
S_MATTERS
id | name
---------------------
0 | Client 1
1 | Client 2
2 | Client 3
S_LINKS
mid | uid
---------------------
2 | 0007
0 | 0007
所以我想
select * from s_matters where id = (select mid from s_links where uid = 0007)
显然,这不是正确的语法,我只需要从s_matters表中获取所有客户端名称,其中另一个表上的uid为0007(s_matters上的id = s_links上的mid)。
select m.*
from s_matters m
inner join s_links l
on m.id = l.mid
where l.uid = '0007'
尝试将“ =”更改为“ in”
select * from s_matters where id in (select mid from s_links where uid = 0007)
SELECT * FROM s_matters JOIN s_links ON ( s_matters.id = s_links.mid ) WHERE s_links.uid = '0007'
内部联接是您要寻找的
select * from s_matters
inner join s_links on s_links.mid = s_matters.id
where s_links.uid = '0007'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.