Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem ze zliczaniem wyników sql
Forum PHP.pl > Forum > Bazy danych > MySQL
mb83
witam
mam problem z zapytaniem sql, które zlicza rekordy (count).
poniższe zapytanie wyświetla 6 rekordów - tak jak chce:
  1. $sql = 'select *, match (tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode) as trafnosc from `newsy` where match (tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode) having trafnosc > 1 order by trafnosc desc';


natomiast to zapytanie:
  1. $sql = 'select count(match(tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode)) as trafnosc from `newsy` where match (tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode) having trafnosc > 1 order by trafnosc desc';


pokazuje 55 rekordów czyli tak jakby nie uwzględniał having. Nie da się użyć count z having w jednym zapytaniu? Co jest problemem?
Prosze o wyrozumiałośc i dzięki za pomoc!

pomoże ktoś?
sazian
jaki efekt chcesz uzyskać ?
Twoje obecne zapytanie niema sensu.
Podejrzewam że chcesz coś takiego ale to tylko dmysły
  1. SELECT *, match (tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode) as trafnosc from `newsy` where match (tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode) > 1 order by trafnosc desc
  2.  

  1. SELECT count(*) FROM `newsy` WHERE match (tytul,skrot,tresc,tagi,osoby,kategoria) against (\''.$q.'\' in boolean mode) > 1
  2.  

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.