如何查询我的数据库以检查user_id
或friend_id
是否等于已登录的用户ID以及他们的friendship_status
是否已被接受。
这是我到目前为止所获得的MySQL代码。
SELECT COUNT(id) as num
FROM users_friends
WHERE users_friends.user_id = '$user_id'
AND friendship_status = '1'
这是我的MySQL表。
CREATE TABLE users_friends (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
user_id INT UNSIGNED UNSIGNED NOT NULL,
friend_id INT UNSIGNED NOT NULL,
friendship_status TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
date_created DATETIME NOT NULL,
);
答案 0 :(得分:0)
SELECT COUNT(id) as num
FROM users_friends
WHERE (
user_id = '$sanitized_user_id'
OR friend_id = '$sanitized_user_id'
)
AND friendship_status = '1'
答案 1 :(得分:0)
SELECT id
FROM user_friends
WHERE (user_id = '$logged_in_user_id'
OR friend_id = '$logged_in_user_id')
AND friendship_status = 1
如果user_id或friend_id等于登录使用ID且存在友谊,则返回的值将包含相应的id。如果找不到,那么返回的值将为null,这可以很容易地检查(在MySQL中可能有类似ISNULL(value_to_be_checked)
的内容)。
在查询中使用之前,您必须正确清理登录的用户ID。