0

我正在努力将 2 个表链接在一起,以便为我的 PHP 脚本填写信息

我有 2 张桌子feedu_feed

U_FEED
id | uid | fid
1  | 2   |  1

FEED
id | url               | title  | favicon
1  | http://example.com | domain | http://example.com/favicon.ico

当前用户 id (uid) 将是2

我试过但没有运气

SELECT u.uid, f.url, f.title, f.favicon
FROM u_feed u
JOIN feed f ON u.fid = '2'
4

4 回答 4

1

试试这个先加入你的桌子然后使用WHERE

SELECT u.uid, f.url, f.title, f.favicon
FROM u_feed u
JOIN feed f ON u.fid = f.id
WHERE  u.fid='2'

或者

SELECT u.uid, f.url, f.title, f.favicon
FROM u_feed u
JOIN feed f ON (u.fid = f.id AND u.fid='2' )// join tables with multiple conditions
于 2013-09-09T08:58:46.653 回答
1

您没有指定要加入两个表的列,并且看起来您使用了错误的列来根据用户 ID 进行过滤。尝试这样的事情:

SELECT u.uid, f.url, f.title, f.favicon
FROM u_feed u
INNER JOIN feed f ON f.id = u.fid
WHERE u.uid = '2'
于 2013-09-09T08:59:36.473 回答
0

正确指定 JOIN 条件。两个表中必须有一列相互对应。在这种情况下,它似乎是u_feed.fidand feed.id

SELECT u.uid, f.url, f.title, f.favicon
FROM u_feed u
JOIN feed f ON f.id = u.fid
WHERE u.uid = '2'
于 2013-09-09T09:01:32.753 回答
0

我认为这是一个错字或混淆 - 你说

当前用户 id (uid) 将为 2

但通过 fid = 2 查询。

SELECT u.uid, f.url, f.title, f.favicon
FROM u_feed u
JOIN feed f ON u.fid = f.id
WHERE u.uid = 2

希望这可以帮助

于 2013-09-09T09:01:52.060 回答