![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 2 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie,
Zaprojektowałem bazę danych, która przetrzymuje dane z relacjami między użytkownikami. Tabela: Friendship Kolmuny: inviting_user_id , invited_user_id, status , sending_time, acceptance_time Stowarzyłem zapytanie zwracające rekordy przyjaciół dla użytkownika XYZ, których sam osobiście zaprosił do grona przyjaciół i oni zaakcpetowali jego zaproszenie. Tylko bo kilku dnia olśniło mnie, że przecież przyjaciółmi użytkownika XYZ mogą być też osoby, które same zaprosiły XYZ. Pytanie jest następujące w jaki sposób mogę dodać do mojego bieżącego zapytania(nie tworząc nowego), aby pobrało mi również przyjaciół, gdzie ja jestem invited_user_id ? Moje aktualne zapytanie:
Z góry dziękuję za pomoc. Pozdrawiam |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
O to chodzi? -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 2 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki bardzo za odpowiedź i zainteresowanie tematem. Przy tym zapytaniu wiązanie jest identyczne jak u mnie friendship.invited_user_id = users.id,
także zwróci to samo. A do tego w where dałeś inviting_user_id = '3' AND invited_user_id='3' więc nic tam to zapytanie nie zwróci, gdyż nie ma takiej możliwości aby w bazie był rekord że osoba zapraszająca zaprasza samą siebie. Masz może inny pomysł? Wydaje mi sie, że zapytanie z UNION (łączeniem tabel) rozwiązałoby ten problem.
Ale czy nie da się tego zrobić w jednym zapytaniu bez union? Macie jakie pomysły? Z góry dziękuję za pomoc. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ten post edytował mmmmmmm 21.07.2012, 19:01:45 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 2 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za pomoc. W ostateczności zapytanie wyszło takie (dzięki mmmmmmm za formułke z IN)
i zapytanie elegancko zwraca dla zadanego $userId jego przyjaciół (tych, których zaprosił i potwierdzili znajomość jak również i tych, którzy go zaprosili i on potwierdził) |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 05:32 |