Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] IN i podzapytanie z warunkiem OR
pionas
post 12.05.2014, 20:29:07
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 2
Dołączył: 25.03.2009
Skąd: Pionki

Ostrzeżenie: (0%)
-----


Cześć,

mam pewien problem.
Chcę wyświetlić swoich znajomych.

znajomosci
- osoba_wysylajaca
- osoba_odbierajaca
- data
- status

Gdy ktoś wyśle prośbę dodania do znajomych to dodaje rekord i status=0, gdy osoba_odbierajaca zaakceptuje status=1.

I teraz chciałbym wyświetlić loginy wszystkich znajomych danej osoby.

Mam takie zapytanie:
  1. SELECT login FROM uzytkownicy WHERE uzytkownik_id IN ((SELECT osoba_odbierajaca FROM znajomosci WHERE osoba_wysylajaca={id_uzytkownika} AND STATUS=1) OR (SELECT osoba_wysylajaca FROM znajomosci WHERE osoba_odbierajaca={id_uzytkownika} AND STATUS=1)) ORDER BY login ASC

I wyświetla login o uzytkownik_id=1, a powinno o uzytkownik_id=2

Gdy osobno wykonam zapytania:
  1. SELECT osoba_odbierajaca FROM znajomosci WHERE osoba_wysylajaca={id_uzytkownika} AND STATUS=1
// daje uzytkownik_id=2
  1. SELECT osoba_wysylajaca FROM znajomosci WHERE osoba_odbierajaca={id_uzytkownika} AND STATUS=1
// zero wyników

Czemu tak się dzieje? Jak poprawić takie zapytanie?


--------------------
Organizujesz konkurs? Chcesz coś wygrać? Wejdź na www.e-Konkursy.info :)
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 Wersja Lo-Fi Aktualny czas: 24.06.2025 - 21:07