2017-02-06 69 views
0

我正在尝试为我的网站创建一个最喜欢的系统。我有一个用户表,作业表和一个收藏夹表。当用户将作业添加到他们的收藏夹时,他们的userId和jobsId被保存到收藏夹表中。当用户想要查看他们的收藏夹时,我一直试图选择与当前用户具有相同userId的收藏夹表中的所有行。然后我需要从这些行中选择jobId,并选择job表中具有匹配jobId的所有行。SQL选择查询收藏夹系统

我一直在尝试此查询的变体,但没有任何运气。

$sqlQuery = "SELECT * FROM job WHERE id = favorites.jobId AND :userId = favorites.userId" 

回答

0

你想从工作表,其ID是在用户的收藏夹中的所有记录。这翻译为:

select * from jobs where id in 
(
    select jobid from favorites where userid = :userid 
); 
+0

它的工作!非常感谢! – KevinDunbar

0

如何:

Select j.* 
from job j 
     join favorites f on j.id = f.jobId 
where :userId = f.userId