Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie danych z dwóch tabel
phpowiec84
post
Post #1





Grupa: Zarejestrowani
Postów: 101
Pomógł: 2
Dołączył: 10.12.2010

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


mam pewien problem ..

są dwie tabele

1 testy

test_id (int)
user_id (int)

2 share

test_id (int)
user_id (int)
status (int)

chce pobrać wszystkie rekordy z tabeli testy gdzie użytkownik ma w drugej tabeli status różny od 1

nie bardzo wiem jak do tego podejść:/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Hpsi
post
Post #2





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

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


pokombinuje torkszę jak to zrobić - daj mi chiwle (IMG:style_emoticons/default/wink.gif) jesli sie uda dam rozwiazanie.

Sprawdź czy o to Ci chodziło:

Stworzłem 2 tabele:
Kod
mysql> select * from share;
+---------+---------+--------+
| test_id | user_id | status |
+---------+---------+--------+
|       1 |       1 |      1 |
|       2 |       1 |      0 |
+---------+---------+--------+

Oraz
mysql> select * from testy;
+---------+
| test_id |
+---------+
|       1 |
|       2 |
|       3 |
+---------+


Wynik zapytania:
  1. SELECT `test_id` FROM `testy` WHERE `test_id` NOT IN (SELECT `test_id` FROM `share` WHERE `user_id`=1 AND `status`=1);

jest następujacy:
Kod
mysql> select `test_id` FROM `testy` WHERE `test_id` NOT IN (select `test_id` FROM `share`  WHERE `user_id`=1 AND `status`=1);
+---------+
| test_id |
+---------+
|       2 |
|       3 |
+---------+
2 rows in set (0,00 sec)


To ci pokaze wszystkie testy w ktorych status nie jest 1 dla uzytkownika o id 1

Ten post edytował Hpsi 29.06.2011, 13:35:18
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 28.12.2025 - 07:54