我有一个两列表friends表,其中有一个相互好友的用户记录。我想得到一个特定用户的好友列表。为此,我编写了一个sql查询,并得到了一个结果。。
SELECT *
FROM `friends`
WHERE `user_idf` = '2'
OR `user_idff` = '2'
++ user_idf ++++ user_idff+++
2 + 1
3 + 2
4 + 2
2 + 5
+++++++++++++++++++++++++++
如何编写一个php函数来回显2的朋友用户(我将用POST代替它,它从应用程序中获取用户id)即。1、3、4、5
你的意思是这样的吗?
(SELECT `user_idf` FROM `user` WHERE `user_idff` = 2) UNION (SELECT `user_idff` FROM `user` WHERE `user_idf` = 2)
老实说,我不擅长sql,但我认为union正是你想要的(我认为我的语法是正确的,尽管我不是100%)。
根据我的理解,这个应该获取与用户2是朋友的任何人的用户ID并输出它。当用户2位于user_idf
和user_idff
列时返回的结果的并集。
编辑:事实上,如果你不这样做,我仍然坚持我的答案;如果不在sql端执行此操作,那么您将不得不拥有一个更复杂的PHP函数。
对于PHP本身,可以将mysqli和PDO作为准备语句的两个主要选项。