gpt4 book ai didi

php - 搜索用户,先回友(Order)

转载 作者:可可西里 更新时间:2023-10-31 23:33:22 27 4
gpt4 key购买 nike

我正在使用以下查询从我的“用户”表中选择用户,此处登录用户的 session ID 为 $uid:

SELECT first_name, last_name, uid, hometown from users  where concat(first_name,' ',last_name) like '%$q%' and uid <> $uid LIMIT 6

我还使用以下查询从“ friend ”表中选择用户的所有 friend :

SELECT a.first_name, a.uid, a.last_name FROM users a, friends b WHERE a.uid = b.friend_two AND b.friend_one = $uid

我的问题是如何在顶部对 friend 的用户进行这样的查询?因此,例如,如果我的用户搜索“Dave”并且我返回 5 个名字为 Dave 的人,我如何才能将他的 friend Dave 排在所有其他 Dave 之上并以这种方式对查询进行排序?

感谢您的帮助。

最佳答案

试试这个:

SELECT
a.first_name,
a.last_name,
a.uid,
a.hometown,
IF(b.friend_two IS NULL, 0, 1) AS isFriend
FROM
users a
LEFT JOIN
friends b ON a.uid = b.friend_two AND b.friend_one = $uid
WHERE
CONCAT(a.first_name, ' ', a.last_name) LIKE '%q%'
AND a.uid <> $uid
ORDER BY
isFriend DESC

关于php - 搜索用户,先回友(Order),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11043264/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com