Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]UNION, a liczenie rekordów
Forum PHP.pl > Forum > Przedszkole
adrianozo
Witam wszystkich. Pisząc wyszukiwarkę po stronie chcę dodać stronicowanie wyników. Do tego potrzebuje podliczyć wszystkie rekordy, ale korzystam tutaj z zapytania UNION ALL. Przy takim zapytaniu otrzymuje komunikat o treści:

Every derived table must have its own alias


kod:

  1. if(isset($_POST['wynik']))
  2. {
  3. $wynik_filtru = urlencode(trim(strip_tags($_POST['wynik'])));
  4. }
  5. $licz = mysql_query("SELECT * FROM (SELECT COUNT(id) FROM offer WHERE nazwa LIKE '%{$wynik_filtru}%')
  6. UNION ALL (SELECT COUNT(id) FROM offer WHERE kategoria LIKE '%{$wynik_filtru}%')") or die(mysql_error());


Proszę o pomoc.
kefirek
Na końcu zapytania daj alias np AS tab
Czyli
  1. mysql_query("SELECT * FROM (SELECT COUNT(id) FROM offer WHERE nazwa LIKE '%{$wynik_filtru}%')
  2. UNION ALL (SELECT COUNT(id) FROM offer WHERE kategoria LIKE '%{$wynik_filtru}%') AS tab")
adrianozo
Jednak nie pomogło. Gdy dodałem or die mysql error to jest to samo.
nospor
W zlym miejscu alias kazano ci dodac smile.gif
  1. mysql_query("SELECT * FROM (SELECT COUNT(id) FROM offer WHERE nazwa LIKE '%{$wynik_filtru}%') AS tab
  2. UNION ALL (SELECT COUNT(id) FROM offer WHERE kategoria LIKE '%{$wynik_filtru}%')");


ps: po grzyba w ogole dajesz te select na początku z podzapytania? Przeciez to niczemu tutaj nie sluzy prócz zawracania gitary
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.