Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z laczeniem tabel, Wybieranie rekordow z tabeli A ktore nie istnieja w tabeli B
Gwozdyk
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 5.01.2008

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


Załóżmy ze mamy dwie tabele A i B. Tabela B przechowuje czesc rekordow z tabeli A. Jak zrobic aby baza wyszukala nam tylko te rekordy ktore istnieja w tabeli A a nie istnieja w tabeli B.
Udalo mi sie zrobic rzecz odwrotna. Wyszukac z tabeli A te dane ktore istnieja w tabeli B:

Kod
select *
from tabelaA, tabelaB
where tabelaA.id = tabelaB.id


W ta strone metoda dziala, jesli zastosuje znak nierownosci wynik jest bez sensu gdyz pojawiaja sie dane bezsensowne wynikajace w laczenia tabel na zasadzie kazdy rekord z kazdym
Help (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował batman 22.04.2008, 16:59:28
Powód edycji: Poprawiłem strasznego byka
Go to the top of the page
+Quote Post
nevt
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


  1. SELECT tabelaA.* FROM tabelaA LEFT JOIN tabelaB USING (id) WHERE tabelaB.id IS NULL;
Go to the top of the page
+Quote Post
Gwozdyk
post
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 5.01.2008

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


Cos to nie dziala tak jak powinno.
Baza wyszukuje wszystkie przedmioty z tabeli A bez wzgledu na to czy znajduja sie w tabeli B czy nie.
Go to the top of the page
+Quote Post
nevt
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


pokaż strukturę tabel ...
Go to the top of the page
+Quote Post
MMPrime
post
Post #5





Grupa: Zarejestrowani
Postów: 79
Pomógł: 12
Dołączył: 23.04.2008

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


Kod
SELECT * FROM tabelaA WHERE id NOT IN(SELECT id FROM tabelaB)

Wyświetli wszystkie rekordy z tabelaA których nie ma w tabelaB.
Go to the top of the page
+Quote Post
Gwozdyk
post
Post #6





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 5.01.2008

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


Drugi sposob dziala.
Jesli chodzi o rozwiazanie nevt'a to chyba problem jest w tym ze w tabeli B id nie jest powiazane z id z tabeli A. Id z tabeli A odzwierciedla idprzedmiotu z tabeli B
Go to the top of the page
+Quote Post

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: 23.12.2025 - 04:37