【发布时间】:2021-06-21 03:07:48
【问题描述】:
我在这里有这个 mySQL 查询,它应该给我一个用户的所有朋友的计数。但是,我需要进一步过滤以仅包含由“status = 20”指定的已确认好友请求。 当我尝试在 WHERE 子句中执行此操作时,我不断收到以下错误
错误代码:1054。“字段列表”中的“f.status”列未知。
我的查询在这里:
Select
u.uuid, u.nick,
count(distinct f.friend_uuid) as number_of_friends, f.status
From
user u
Left Outer Join (
Select user_uuid, friend_uuid from user_friend
Union All
Select friend_uuid, user_uuid from user_friend
) as f
On u.uuid = f.user_uuid
WHERE f.status = '20'
GROUP BY 1,2,4
HAVING number_of_friends >=10;
【问题讨论】:
-
您能否格式化您的代码并将其放入代码块中?这种文本格式很难阅读!
-
您的 f 子查询返回两列:user_uuid 和friend_uuid。您的意思是在子查询中选择状态?
标签: mysql