Autor Zpráva
Milhauscorpse
Profil *
Dobrý den.Potřeboval bych poradit s problémem,který nemohu vyřešit.Jak vypsat počet řádků v tabulce které mají stejný údaj ve sloupci?Ukládám do sloupce datum(ve formátu např:21.04.2011).
A výsledek který bych potřeboval je asi toto:

20.04.2011- počet řádků 10
21.04.2011- počet řádků 22
atd...

Stačí mi nastínit jak na to,zbytek už si dohledám.Děkuji Milhauscorpse
TomášK
Profil
SELECT COUNT(*) FROM tabulka GROUP BY sloupec


Datum by mělo být ukládáno ve sloupci typu DATE.
Milhauscorpse
Profil *
TomášK
Asi jsem to špatně dotáhl do konce.Použil jsem teda toto:

$vysledek=mysql_query("SELECT COUNT(*) FROM pocitadlo_back GROUP BY datum");         
 $zaznam=mysql_fetch_array($vysledek);
    $celkem=$zaznam["datum"];
                             echo"$celkem";


ale nevypisuje mi to nic
Joker
Profil
Milhauscorpse:
$celkem=$zaznam["datum"];
Ve výsledku toho dotazu není žádný sloupec jménem datum
Šlo by ten dotaz upravit na SELECT COUNT(*) AS datum…, ale to asi nebude ono, protože COUNT vrací počet a ne datum.
Milhauscorpse
Profil *
Joker:
Sloupec datum tam mám určitě.Vyzkoušel jsem :
$vysledek=mysql_query("SELECT COUNT(*) as datum FROM pocitadlo_back GROUP BY datum");         
 $zaznam=mysql_fetch_array($vysledek);
    $celkem=$zaznam["datum"];
                             echo"$celkem";

a vrátí mi to poze " 22 ".i když řádků mám přes 100
Joker
Profil
Milhauscorpse:
Sloupec datum tam mám určitě
V databázi možná, ale ne ve výběru!
SELECT COUNT(*)FROM
do výběru dá jen jeden sloupec s počtem.

vrátí mi to poze " 22 ".i když řádků mám přes 100
Ale 22 řádků má nějaké stejné datum, ne.
Milhauscorpse
Profil *
Joker:
Takže tohle funguje:
$vysledek=mysql_query("SELECT COUNT(datum) as datum FROM pocitadlo_back GROUP BY datum");         

  while ($zaznam=MySQL_Fetch_Array($vysledek))
  {
    $celkem=$zaznam["datum"];
                             echo"$celkem <br>";
  }


Tohle funguje.Ještě se chci zeptat jak to doladit do tohoto výsledku:20.04.2011- počet řádků 10 ,Tedy jak dostat do proměnné to 20.04.2011?
jenikkozak
Profil
SELECT COUNT(datum) as pocet, datum FROM pocitadlo_back GROUP BY datum

$zaznam["datum"] bude obsahovat datum a $zaznam["pocet"] bude obsahovat počet položek s tímto datem.

while ($zaznam=MySQL_Fetch_Array($vysledek))
  {
                   echo $zaznam["datum"]." - ".$zaznam["pocet"]."<br>";
  }
Milhauscorpse
Profil *
Děkuji moc všem za rady,funguje to jak má.Milhauscorpse
Smekac
Profil
Zdravím,
mám tabulku s produkty, ty se mi vypisují do řádků, potom mám v tabulce prodejce ty se mi vypisují jako sloupečky, dohromady je to v jedné tabulce, potřebuji ale zjistit celkový počet objednaných produktů tj. sečíst všechny hodnoty v řádku a potom výsledek každého řádku zobrazit. Nevíte někdo jak na to ? Všude jsem našel jen sčítání hodnot ve sloupci.
Tori
Profil
Smekac:
Příště si prosím založte vlastní téma.
Nestačí vám prostě SELECT (SUM(sloupec1) + SUM(sloupec2) + SUM(sloupec3)) AS soucet? Anebo sečíst jednotlivé sloupce až v PHP.
A podívejte se do FAQ, jestli váš návrh databáze nemá tuto chybu: Některé časteji řešené dotazy pro MySQL - FAQ » Musíte pojmenovávat sloupce s indexem (jmeno1, jmeno2, jmeno3, …)

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: