Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> sprawdzanie zawartości tabeli na podstawie innej tabeli
mpps
post
Post #1





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


Witam,
mam taki banalny problem...
Mam dwie tabele w bazie.
W tych tabelach są kolumny, które zawierają (prawie) takie same dane.
Kolumny to: 'id' i 'kolumna'.
Potrzebuję sprawdzić, czy dane z jednej tabeli zawierają się w drugiej tabeli i je wyświetlić.

Np.
Kod
tabela1  |  tabela2
---------------------
1   aaa   | 1    aaa
2   bbb   | 2    bbb
3   ccc   |
4   ddd   | 3    ddd


Wyświetlamy: aaa, bbb, ddd, ponieważ ccc nie ma w drugiej tabeli.

Mam już coś takiego:
  1. $result1 = mysql_query("SELECT * FROM tabela1 ORDER BY id") OR die(mysql_error());
  2. while($rek1 = mysql_fetch_row($result1)){
  3. $result = mysql_query("SELECT * FROM tabela2 WHERE kolumna=".$rek1[1]." ORDER BY id") OR die(mysql_error());
  4. while($rek = mysql_fetch_row($result)){
  5. print('<LI><A HREF="index.php?id='.$id.'&producent='.$rek[1].'">'.$rek[1].'</A></LI>');
  6. }
  7. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mpps
post
Post #2





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


@Skobi
dzięki za odpowiedź.
Co oznacza 't1' w zapytaniu?
Niestety nie zwraca danych ale błędu też nie...

Zastosowałem Twoje rozwiązanie tak:
  1. $result1 = mysql_query("SELECT * FROM tabela1 t1 LEFT OUTER JOIN tabela2 t2 ON (t1.id = t2.id AND t1.kolumna = t2.kolumna) WHERE t2.id IS NOT NULL");
  2. while($rek1 = mysql_fetch_row($result1)){
  3. print('<LI><A HREF="index.php?id='.$id.'&producent='.$rek[1].'">'.$rek[1].'</A></LI>');
  4. }


Nie wiem, czy dobrze opisałem problem...
Może trochę uszczegółowię:
W jednej tabeli w kolumnie 'kolumn' będą wpisane dane, które w tej kolumnie wystąpią tylko raz.
W drugiej kolumnie dane te mogą pojawić się wielokrotnie, natomiast ja chcę je wyświetlić TYLKO RAZ.
Stąd pomysł, aby porównywać dane z dwóch tabel.
Może można uzyskać powyższe w inny sposób?
Jeśli tak, to uprzejmie proszę o podpowiedź, bo jestem za cienki w uszach (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował mpps 11.10.2006, 11:54:19
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: 12.10.2025 - 08:35