sql >> Databasteknik >  >> RDS >> Mysql

SQL-fråga för gemensamma vänner

Med tanke på två användare hittar @friend1 och @friend2 alla användare som är gemensamma vänner till dem:

SELECT user.uid
FROM user
WHERE EXISTS(
    SELECT TOP 1 1 
    FROM Friends 
    WHERE Friends.fuid = @friend1 AND Friends.fapproved = 1 
      AND Friends.fuid2 = User.uid
  )
  AND EXISTS(
    SELECT TOP 1 1 
    FROM Friends 
    WHERE Friends.fuid = @friend2 AND Friends.fapproved = 1 
      AND Friends.fuid2 = User.uid
  )


  1. En nybörjarguide till SQL-tabeller

  2. En enkel introduktion till att använda MySQL på Linux-terminalen

  3. Beräkna en löpande summa i MySQL

  4. SQL Server Interns:Problematiska operatörer Pt. I – Skanningar