sql >> Databasteknik >  >> RDS >> Mysql

Vilka är sätten att få gemensamma vänner i ett (1, 2) (2, 1) vänskapsscenario?

Tittar på tabellformatet från din annan fråga , detta bör göra vad du vill;

SELECT name FROM users u
JOIN friends f1
  ON u.uid = f1.uid OR u.uid = f1.fid
JOIN friends f2
  ON u.uid = f2.uid OR u.uid = f2.fid
WHERE (f1.uid=1 OR f1.fid=1) AND (f2.uid=3 OR f2.fid=3) 
  AND u.uid<>1 AND u.uid<>3;

Demo här .



  1. Hur REVERSE() fungerar i MariaDB

  2. Postgres tid med tidszonslikhet

  3. Hur tar man bort dubbletter på en MySQL-tabell?

  4. Fråga efter exakt matchning av en sträng i SQL