我有一个查询,旨在使所有用户都不受该用户的关注。
我想对它们进行排序以匹配他选择的模式-模式是0到3之间的json字符串(例如[0] / [0,2] / [1,3] ...),我想首先向用户展示最佳结果。
例如,如果用户的模式为[1,3],它将首先显示[x,1] / [1] / [1,x,x] ...,然后显示其余的用户。如果他先有[1,2],它将显示相同的内容,然后显示[2,x]等,然后显示其余部分。
请注意,如果用户尚未定义任何模式,则模式也可以为空。 (空字符串是未定义的,而不是[])。
我尝试按users.modes进行排序,但是无论用户的模式是什么,它都会对其进行排序。
SELECT *, users.uid, users.id
FROM users
LEFT JOIN follows
ON (follows.fid = users.uid AND follows.uid = 3443963)
WHERE follows.id IS NULL AND users.uid != 3443963
ORDER BY users.modes DESC
LIMIT 9