Autor Zpráva
embryo
Profil *
Zdavim, potrebuji secist cisla z MySQL z 16 nejvyssich polozek v tabulce, jak to mam udelat. Diky
juneau
Profil
$mysql = mysql_query("SELECT SUM(cislo) as soucet FROM tabulka ORDER BY cislo DESC LIMIT 16");
$soucet = mysql_result($mysql,0,"soucet");

... asi.
embryo
Profil *
sorry za ten lama dotaz, alůe moc by mi to pomohlo

dotaz jsem upravil na :

vyhodi mi to ale chybu: mysql_result(): supplied argument is not a valid MySQL result resource in

$mysql = mysql_query("SELECT SUM * FROM hra ORDER BY 'mb' DESC LIMIT 16");
$soucet = mysql_result($mysql,0,"soucet");
juneau
Profil
"SELECT SUM * FROM" je blbost... ty chces jako secist vsechny sloupce v 16ti radcich? k cemu je to proboha dobry?

a tu chybu to hazi proto, nebot mysql nevrati zadny vysledek. neprelozi ono sql (se "SUM *" si neporadi)...

nevim, zda to zvladne mysql, ale v php bys pak uz vsechny sloupce a radky pohodlne secetl...
embryo
Profil *
moje chyba, kdyz pouziju

SELECT SUM(1) FROM hra ORDER BY 'mb' DESC LIMIT 16

tak se stejne dozvim jen pocet zaznamu v tabulce, limit nefunguje, nevim proste jak secist prvnich 16 dat ve sloupci mb
juneau
Profil
SELECT SUM(mb) as soucet FROM hra ORDER BY 'mb' DESC LIMIT 16

Tohle ti vrati soucet sloupcu "mb" v sestnacti radcich, kde je hodnota mb nejvyssi.
embryo
Profil *
ten limit tam nejak nefunguje, je jedno co je tam za cislo, porad to dava soucet vsech dat v sloupci
embryo
Profil *
moje chyba uz to mam, diky :)
embryo
Profil *
ne, tak ja uz nevim:( , at tam dam limit treba 10 ukazuje mi to porad stejny cislo, mnemuze byt problem v tom, ze to typ FLOAT ?
juneau
Profil
to nevim... a kolik tam mas radku dohromady?
embryo
Profil *
tabulka vypada takhle

TABLE `hrac` (
`id` mediumint(8) NOT NULL auto_increment,
`li` mediumint(9) NOT NULL default '0',
`prijmeni` varchar(20) NOT NULL default '',
`jmeno` varchar(12) NOT NULL default '',
`kat` char(2) default NULL,
`ickl` tinyint(4) NOT NULL default '0',
`czv` smallint(6) NOT NULL default '0',
`mb` float(7,3) NOT NULL default '0.000',
`cbod` float(7,3) NOT NULL default '0.000',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1250 AUTO_INCREMENT=774 ;

a z toho mb (je tam asi 800 zaznamu potrebuju secist prvnich nejvysich 16
juneau
Profil
$mysql = mysql_query("SELECT SUM(mb) as soucet FROM tabulka ORDER BY mb DESC LIMIT 16");
echo "soucet: " . $soucet = mysql_result($mysql,0,"soucet");

echo "<p>". mysql_error() ."</p>";

... a pak napis, co to pise.
embryo
Profil *
vyhodi to soucet: 6188.109 (mopc velky vysledek by mel byt cca 800, ale stejny cislo je i kdyz zmenim limit na 10 nebo jiny cislo
juneau
Profil
$soucet = 0;
$mysql = mysql_query("SELECT mb FROM tabulka ORDER BY mb DESC LIMIT 16");
while($p = mysql_fetch_array($mysql))
{
$cislo = $p["mb"];
$soucet += $cislo;
}

echo $soucet;


... tohle uz snad pujde
embryo
Profil *
tohle uz funguje jak ma, diky
juneau
Profil
neni zac.
mohl jsem to napsat uz na zacatku, ale posl dobou mam tendenci min zatezovat php necim, co zvladne mysql... tohle ovsem asi nebyl ten pripad :)
kovy
Profil *
muzu mit dotaz?

mam necelociselnej pocet a select mi ho po tomhle dotazu vzdycky skrouhne... nevedeli byste prosim co s tim?

$sql1 = mysql_query("SELECT *, SUM(pocet) AS pocet2 FROM $table_pomocna_faktura_polozky WHERE user = '$id_user' AND cislo_faktura = '$cislo_faktura' GROUP BY text_faktura ORDER BY id_akce DESC, cena_prodej DESC ");
Toto téma je uzamčeno. Odpověď nelze zaslat.