编辑:知道了!
SELECT `update`, `date` from updates, users_friends
WHERE updates.userID = users_friends.friendID
and users_friends.userID = "5"
and users_friends.status = "2"
我意识到我正在尝试调用不存在的更新。为了解决这个问题,我创建了一个新的更新,这次是由ID 为6的用户编写的。
--
我正在建立一个社交网站。我希望显示来自朋友的更新列表。我的数据库包含两个表来实现此目的:更新和users_friends。
这是我的查询:
选择"更新"从更新其中 'updates.userID' in(选择"朋友ID"从users_friends其中 'users_friends.userID' = $myID和"状态"= 2(;
(状态值 2 表示他们的友谊被批准(
--
-- 表updates
的表结构
如果不存在,则创建表 updates
( update
文本不为空, date
时间戳不是空默认CURRENT_TIMESTAMP更新CURRENT_TIMESTAMP, userID
int(11( 不为空, 主键 ( date
, userID
(, 钥匙fk_updates_users1
( userID
(( 引擎=InnoDB 默认字符集=UTF8;
--
-- 表users_friends
的表结构
如果不存在,则创建表 users_friends
( userID
int(11( 不为空, friendID
int(11( 不为空, status
int(1( 不为空的默认值 '0', 主键 ( userID
, friendID
(, 钥匙fk_users_has_friends_users1
( userID
(( 引擎=InnoDB 默认字符集=UTF8;
遇到的问题是我总是得到一个空集。我向更新表添加了一个示例更新,用户 ID = 5,并在用户 6 是用户 5 和 myID = 6 的users_friends表中添加了示例行。
我的逻辑正确吗?我做错了什么?
SELECT `update`, `date` from updates, users_friends
WHERE updates.userID = users_friends.friendID
and users_friends.userID = "5"
and users_friends.status = "2"
我意识到我正在尝试调用不存在的更新。为了解决这个问题,我创建了一个新的更新,这次是由ID 为6的用户编写的。