[英]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.