Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Schemat bazy danych przyjaźni z jednym wierszem z pobraniem identyfikatora użytkownika z jednej lub drugiej kolumny

To zapytanie zwróci wartość identyfikatora i nazwę znajomych z nr 5, jak pokazano w tym Przykład SQL Fiddle

SELECT f.FriendId AS FriendId
   , u.Name AS FriendName
FROM FriendTable AS f
INNER JOIN UserAccount AS u ON f.FriendId = u.UserId
WHERE f.UserId = 5

UNION

SELECT f.UserId AS FriendId
   , u.Name AS FriendName
FROM FriendTable AS f
INNER JOIN UserAccount AS u ON f.UserId = u.UserId
WHERE f.FriendId = 5

UNION usunie duplikaty, dzięki czemu to zapytanie będzie działać zarówno dla jednego rekordu znajomych, jak i dla 2 rekordów znajomych, o których wspominasz w komentarzu. Nie powinieneś jednak potrzebować przyjaźni z dwoma rekordami, ponieważ w drugim rekordzie nie są przechowywane żadne nowe informacje, których nie można uzyskać, mając tylko jeden rekord.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przywróć bazę danych mysql z plików .frm

  2. php uruchom raz i wstaw dwa razy w bazie mysql

  3. Odpowiednik SQL Server 2000 dla NA ZDUPLIKOWANY KLUCZ?

  4. Jakie jest najlepsze pole do przechowywania urodzin?

  5. mysql sortowanie i zestawienie rankingowe