在SQL查询中重用相同的值

时间:2016-06-02 19:26:11

标签: mysql

我试图多次使用SELECT语句中的相同值 我的查询的开头如下所示:

IF EXISTS (SELECT * FROM `friends` WHERE (`Friend1ID`=value OR `Friend2ID`=value))...

value应该是SELECT查询的结果,例如:

SELECT `ID` FROM `users` WHERE `name`='daniel'

我可以使用相同的SELECT语句两次,但是还有其他任何可能使查询“更清晰”的可能性吗?

1 个答案:

答案 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'