我想根据登录的用户所关注的人来选择来自用户的帖子。我需要做什么?如何在一条SELECT语句中使用两个不同的表?我甚至不知道从哪里开始。使用MySQL select语句
我有3个表: 用户 帖子 追随者
感谢。
我想根据登录的用户所关注的人来选择来自用户的帖子。我需要做什么?如何在一条SELECT语句中使用两个不同的表?我甚至不知道从哪里开始。使用MySQL select语句
我有3个表: 用户 帖子 追随者
感谢。
SELECT p.*
FROM followers f
JOIN posts p
ON p.author = f.following_id
WHERE f.user_id = $logged_in
ORDER BY
p.post_date DESC
我必须补齐字段名称,因为您没有提供它们。
我将与加入查询去,因为Quassonoi在他的回答表明,如果你想尝试另一种解决方案,你可以用子查询像这样做
SELECT P.PostId,P.Title,P.Body
FROM Post P WHERE P.CreatedById
IN (
SELECT FollowerID from Followers WHERE USER_ID=3
)
更换3
与当前用户ID。假设你的表结构是这样的。
POST
PostId (int)
Title
Body
关注
UserId (int)
FollowerId (int)
选择两个表中的使用做JOIN的 http://dev.mysql.com/doc/refman/5.0/en/join.html
基本上你从两个表中选择并定义连接条件。
假设你有两个表:
SELECT p.title,p.message FROM users u JOIN posts p ON u.user_id = p.user_id WHERE u.online_state ='online'
连接条件应该在ON之后,非j oin状态在哪里
什么是你的表格结构? – Shyju 2012-04-25 19:45:35
请提供创建表的SQL,然后可以提供帮助。但它的要点是你使用外键和主键进行连接。 – 2012-04-25 19:46:34
这似乎是它在一小时前为您详细解答:http://stackoverflow.com/questions/10321532/using-an-array-in-an-sql-query – 2012-04-25 19:56:36