因此,我相信我需要一个内部加入此查询,但我不是100%肯定。SQL内部连接3台
首先看到我的数据库图表:
Click here for database diagram
我想要实现:
- 我试图让所有消息(这样user_username ,text,posted_at FROM Messages),其中user_username与followed_username匹配,以及followed_username具有=?的follower_username。
- 基本上,每个人都跟着?,我想要得到他们所有的信息。
在哪里? =的inputed用户名
我到目前为止已经
我已经尝试了多个SQL语句,并迄今无法获得成功的尝试。这些都是我尝试过的。
$sql = "SELECT user_username, text, posted_at FROM Messages, Users, User_Follows WHERE user_username = (SELECT username FROM Users WHERE username = (SELECT followed_username FROM User_Follows WHERE follower_username = ?)) ORDER BY posted_at DESC;";
$sql = "SELECT user_username, text, posted_at FROM Messages, User_Follows WHERE follower_username = ? AND followed_username = user_username;";
$sql = "SELECT user_username, text, posted_at FROM Messages JOIN User_Follows ON user_username = followed_username WHERE follower_username = followed_username;";
我想现在我需要使用一个内连接来达到我想要的,但我不太清楚这是否是正确的,或者如何去了解它。
在此先感谢。
你现在所拥有的是什么交叉连接这是你的问题。在任何情况下你都不应该使用隐式连接。他们是一种很差的技术,会导致这样的问题。为了提供修复,我们需要查看表结构。 – HLGEM
你看过我的链接@HLGEM – jsmith