此语句显示用户 2 的 friend 列表并获取用户 1 的共同 friend 数量。当我运行此语句时,出现以下错误,
:Unknown column 'users.user_id' in 'where clause'
查询
SELECT users.user_id,
(SELECT count(a.friendID) FROM
(
SELECT user_two_id friendID FROM friends WHERE user_one_id = **users.user_id**
UNION
SELECT user_one_id friendID FROM friends WHERE user_two_id = users.user_id
) AS a
JOIN
(
SELECT user_two_id friendID FROM friends WHERE user_one_id = 1
UNION
SELECT user_one_id friendID FROM friends WHERE user_two_id = 1
) AS b
ON a.friendID = b.friendID) as mutual
FROM friends LEFT JOIN users ON friends.user_one_id = users.user_id or friends.user_two_id = users.user_id WHERE (friends.user_one_id = 2 OR friends.user_two_id = 2) AND users.user_id != 2
最佳答案
内部查询
SELECT user_one_id friendID FROM friends WHERE user_two_id = users.user_id
不知道users.user_id是什么
关于php - 'users.user_id' 中的未知列 'where clause',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50252150/