Autor Zpráva
finc
Profil *
Dobrý den,
chtěl jsem se zeptat, zda existuje řešení pro vrácení celkové sumy sloupce při použití limit.
Používám vcelku složité selecty, které vrací tisíce záznamů a proto je omezuji pomocí limit
k použivání stránkovaní.
Výpis do HTML tabulky je takový, že první řádek obsahuje celkovou sumu na daný sloupec a pod ním jsou jednotlivé řádky vypsané pomocí while.
Zjištění celkové sumy, která by ignorovala LIMIT řeším dalším dotazem do DB.

Příklad:
<?php
$query = "SELECT SQL_CALC_FOUND_ROWS jmeno, cena FROM table LIMIT 100, 200";
// diky SQL_CALC_FOUND_ROWS zjistim celkovy pocet zaznamu pro strankovani
/*
// vynatek z tridy pro strankovani
$result = DB::mysqli()->query("SELECT FOUND_ROWS() AS celkem");
$celkem = $result->fetch_object();
$result->close();
$this->celkem = $celkem->celkem;
*/
if ($result = DB::mysqli()->query($query)) {
// zde bych potreboval nejakym zpusobem napr. pro sloupec cena zjistit sumu
// aniz bych pouzil dalsi dotaz do DB
while($row = $result->fetch_assoc()) {
// vypis dat
}
$result->close();
}
?>

Zná někdo nějaké řešení např. pomocí mysqli? Do daného dotazu "SUM(cena)" přidávat nechci. Vracelo by mi to pro každý záznam sloupec s celkovou sumou sloupce a navíc bych musel použít group by.
Ještě doplním, že v SELECTech jsou použity JOINy a složité WHERE podmínky, které je potřeba brát v úvahu.
finc
Profil *
Pořád nic? :)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0