Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL]Pomijanie tych samych rekordów, 2 Zapytania
Forum PHP.pl > Forum > Przedszkole
Weles
Witam!
Mam taki mały problem, gdyż chcę obliczyć ilu użytkowników pisało wszystkie Tematy i Posty w moim skrypcie, więc użyłem do tego DistInc, ale że mam 2 tabele (jedna od Tematów, druga od Postów) to liczy mi przez to te same ID użytkowników..
i Tutaj pada pytanie, jak pominąć wszystkich znalezionych użytkowników z jednego zapytania w drugim zapytaniu?

Zapytania moje wyglądają tak:

  1. $piszacy_tematy = mysql_num_rows(mysql_query("SELECT DISTINCT autor FROM $baza_forum.tematy"));
  2. $piszacy_posty = mysql_num_rows(mysql_query("SELECT DISTINCT autor FROM $baza_forum.posty"));
  3. $lacznie_piszacy = $piszacy_tematy+$piszacy_posty;


Wie ktoś może co na to poradzić?

Dziękuję z góry,
Pozdrawiam!
kda
Chodzi Ci o wyeliminowanie tych postów gdzie użytkownik sam założył temat, bo szczerze mówiąc trochę jak dla mnie zagmatwałeś pytanie
Weles
Popatrz, mam tabelę 'tematy' oraz tabelę 'posty'.
I w nich są ID tych samych użytkowników.
I.. jeżeli w obu tabelach są te same ID użytkowników, to nie chcę aby mi je dodawało, więc chcę aby NAJPIERW zapytanie sprawdziło ID userów z DISTINCT, a następnie w drugim zapytaniu jakoś w tej drugiej tabeli Z NOT-LIKE'owało wszystkie ID które znalazło pierwsze zapytanie.

Dobrze opisałem? :/
kda
Ja bym to zrobił tak, zapytanie do tabeli TEMATY i w pętlę wpakował zliczanie z pominięciem tych co już znalazł w tabeli tematy
  1. $wynik = mysql_query ("SELECT * FROM $baza_forum.posty where autor!='a tu wpisz zmienną z pętli którą ma wykluczyć w liczeniu';");
  2. $piszacy_posty = mysql_num_rows($wynik);
Weles
Nie działa, liczy rekordy tyle razy ile rekordów w pętli.
kda
a możesz wstawić kod jak to zrobiłeś ?
Weles
@UP:
No nie mam pomysłu jak to zrobić, a tak jak pisałeś po prostu nie pika :X
kda
wstaw kod jak próbowałeś to zrobić zgodnie z tym co ci napisałem, w tedy będzie łatwiej ci pomóc
lukasz_os
Zapytanie o posty zrób:
  1. SELECT DISTINCT autor FROM $baza_forum.posty WHERE autor NOT IN (SELECT autor FROM $baza_forum.tematy)


Wytnie Tobie wszystkich uzytkowników którzy zakładali tematy
Weles
@UP:
Teraz nie jestem w stanie tego sprawdzić, bo użytkownicy już popisali różne posty itd. ale z tego co widzę (wydaje mi się) to działa good, więc dzięki! wink.gif
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.