Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Projektowanie bazy (zliczanie rekordów)
matti9410
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 10.07.2013

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


Mam takie pytanie mam taką baze
kategoria | link | temat
-------------------------------
potret | sad | sadsd
produkt | sad | sadsd
potret | sad | sadsd
potret | sad | sadsd
produkt | sad | sadsd
potret | sad | sadsd


i pytanie czy idzie jakoś zliczyć rekordy które mają wpis w kolumnie kategoria np portret czy muszę dodać jakąś osobną kolumnę ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
@nospor, a co w przypadku gdy musimy policzyc kilka roznych rzeczy? (co lepiej, jedno zapytanie z kilka sum czy kilka zapytan z count(*)) ?

Na pewno szybkie będzie UNION, gdzie kazdą liczbę policzysz oddzielnym zapytaniem i połączysz w jedno przez UNION

Oczywiscie pozostaje kwestia odpowiednich indeksow na szukane pole, ale to chyba oczywiste.

Mozna tez isc w tę stronę:
  1. SELECT COUNT(IF(WARUNEK1,1,NULL)),COUNT(IF(WARUNEK2,1,NULL)) FROM TABELA WHERE WARUNEK1 OR WARUNEK2

Przy prawidłowych indeksach też powinno smigac w miare ładnie.

lub poprostu tak
  1. SELECT COUNT(*) FROM TABELA WHERE WARUNEK1 OR WARUNEK2 GROUP BY POLE
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 08:41