我试图多次使用SELECT语句中的相同值 我的查询的开头如下所示:
IF EXISTS (SELECT * FROM `friends` WHERE (`Friend1ID`=value OR `Friend2ID`=value))...
value
应该是SELECT查询的结果,例如:
SELECT `ID` FROM `users` WHERE `name`='daniel'
我可以使用相同的SELECT语句两次,但是还有其他任何可能使查询“更清晰”的可能性吗?
答案 0 :(得分:2)
如果您只是想获得一个朋友列表,其关联的用户名为“daniel'然后你可以使用INNER JOIN
。
SELECT
*
FROM
friends
INNER JOIN users ON users.ID=friends.friends1ID OR users.ID=friends.friends2ID
WHERE
users.name='daniel'