Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL] wyszukanie niezwiązanego rekordu
Forum PHP.pl > Forum > Przedszkole
kurt
Mam dwie tabele:

product
product_id
product_name
...

product_description
product_id
product_weight
...

pola product_id w obu tabelach dotyczą tego samego produktu.

Jak znaleźć rekordy z tabeli product , które nie mają powiązania z rekordami z tabeli product_description

jakoś nie mogę się doczekać podpowiedzi toteż uproszczę pytanie: jak znależć rekordy występujące w tabeli product ,a nie występujące w tabeli product-description ?

polem wiążącym jest oczywiście pole product_id.

Próbowałem już zapytania z LEFT JOIN ale cosik mi nie wychodzi.
suck
  1. SELECT product.product_id FROM product, product_description WHERE product.product_id <> product_description.product_id
kurt
Niestety Suck, nie mogę tego odczytać. Widzę tylko text area z suwakami i więcej nic.
czyżby chodziło o :

  1. SELECT product.product_id FROM product, product_description WHERE product.product_id <> product_description.product_id
mike
Cytat(kurt @ 24.06.2006, 16:09 ) *
Niestety Suck, nie mogę tego odczytać. Widzę tylko text area z suwakami i więcej nic.

Przecież można sobie skopiowac zawartość okienka z kodem i wstawić entery.
Ciężko?

  1. SELECT product.product_id
  2. FROM product, product_description
  3. WHERE product.product_id <> product_description.product_id;
kurt
Dzięki za sugestję ale poradziłem sobie z tym.
Natomiast co do problemu zasadniczego to przy 6000 rekordach powyższe zapytanie zawiesza kompa.
Powstał klasyczny kartezjan.
Ma ktoś jakieś pomysły ?

Ufff! Znalazłem rozwiązanie:

  1. SELECT product.product_id FROM product LEFT JOIN product_description ON product.product_id=product_description.product_id
  2. WHERE product_description.product_id IS NULL
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.