Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] select z wyborem pobieranego pola (IF ?)
-herbaciarz-
post
Post #1





Goście







Witam,

Mam taki problem.

Mam moduł znajomych, tabelę friends, w niej pola: friendsid, date, friend1id, friend2id

Pole friend1id to ID osoby zapraszającej.
Pole friend2id to ID osoby zapraszanej.

Załóżmy, że mamy użytkownika o ID=1.
Interesuje nas wyświetlenie wszystkich znajomych użytkownika, czyli wszystkie rekordy gdzie w jednym z dwóch pól friend1id lub friend2id znajdzie się nasze ID=1.
  1. SELECT friendsid,friend1id,friend2id FROM friends WHERE friend1id =1 OR friend2id =1 GROUP BY date
  2. friendsid friend1id friend2id
  3. 66 1 2
  4. 62 1 15
  5. 68 1 16
  6. 63 1 24
  7. 70 1 26
  8. 69 1 27
  9. 60 11 1


Pytanie brzmi: Jak napisać zapytanie, żeby w wynikach w jednej kolumnie zawsze było ID "przeciwne". Czyli tutaj nie 1.
Czyli interesuje mnie wynik w zbliżonej postaci jak:
  1. friendsid friendid
  2. 66 2
  3. 62 15
  4. 68 16
  5. 63 24
  6. 70 26
  7. 69 27
  8. 60 11

Oczywiście nie interesują mnie jakieś obejścia w postaci warunków w PHP, ponieważ chciałbym później ciut rozbudować zapytanie do własnych potrzeb, ale jak pokonam tę barierę to dalej powinienem sobie poradzić.

Czy można się posłużyć jakimś IF, może jakieś inne sugestie?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 17:39