Autor Zpráva
Taps
Profil
Mám níže uvedený dotaz a chci se zeptat jestli je nějaká možnost, aby když nebude v kategorii žádný záznam např. tenis, aby se mi vypsala 0
.....and kategorie in ('hokej','fotbal','tenis')...group by kategorie
djlj
Profil
echo mysql_num_rows($dotaz);
Taps
Profil
djlj
a bude to třeba fungovat když např. u hokeje 13 a u fotbalu 10 ?
djlj
Profil
Ajo, už chápu, co potřebuješ

přidej si tam ještě COUNT(*) pocet
Taps
Profil
djlj
$sql=mysql_query("select count(id), sum(poplatek), kategorie,vlozil,pracoviste from evidence where vlozil='03' and pracoviste='TB' and and kategorie in ('´fotbal','hokej','tenis') group by kategorie order by kategorie ASC") or die (mysql_error());

Problém je v tom že když např. není záznam fotbal tak se nic nevypíše jak teda zobrazit kategorie fotbal a u této položky zobrazit 0....
Taps
Profil
djlj
$sql=mysql_query("select count(id), sum(poplatek), kategorie,vlozil,pracoviste from evidence where vlozil='03' and pracoviste='TB' and and kategorie in ('´fotbal','hokej','tenis') group by kategorie order by kategorie ASC") or die (mysql_error());

Problém je v tom že když např. není záznam fotbal tak se nic nevypíše jak teda zobrazit kategorie fotbal a u této položky zobrazit 0....
Kajman_
Profil *
udělat si v další tabulce číselník kategorií a ten spojit pomocí left join s evidence
djlj
Profil
Taps
A ještě bych dodal, že za group by kategorie nemusíš přidávat znovu řazení podle sloupce kategorie, protože GROUP umí řadit samo o sobě.
Taps
Profil
Kajman_
zkoušel jsem to takto
$sql=mysql_query("select sum(poplatek),count(pid),kategorie,pracoviste 
from evidence left join  vypisy on  evidence.kategorie=vypisy.id  
where pracoviste='RT' and kategorie in ('fotbal,hokej','tenis') group by kategorie")
or die (mysql_error());

ale opět nic

struktura tabulek

vypisy
id
nazev

evidence
poplatek
pid
kategorie
pracoviste
Kajman_
Profil *
select sum(e.poplatek),count(e.pid),v.id,v.nazev,e.pracoviste
from vypisy v left join evidence e on e.kategorie=v.id and e.pracoviste='RT'
where v.id in ('fotbal,hokej','tenis') group by v.id, e.pracoviste

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: