Autor | Zpráva | ||
---|---|---|---|
table Profil * |
#1 · Zasláno: 7. 9. 2013, 13:49:44 · Upravil/a: table
Dobrý den,
měl bych na Vás jednu otázečku. Zde mám dotaz do databáze: <?php $datum=date("dmY"); $query="SELECT confid,Name,g.pozice AS hrac,z.nazev AS Teamname,Team,Pos,P,G,A,GP,Time,Pims,plusminus,PPG,SHG,Shoot,Hits,Pos1,FName1,LName1 FROM `playerstat` p LEFT JOIN zkratky z ON p.Team=z.zkratka LEFT JOIN NHL_Roster1 r ON p.Team = r.Team1 AND Name = CONCAT_WS( ' ', Lname1, Fname1 ) LEFT JOIN position g ON r.Pos1=g.zkratka1 WHERE confid=$confid AND POS='Goalie' "; If(!Empty($_GET['tym']) && $_GET['tym']!='*') $query.="AND z.nazev='".mysql_real_escape_string($_GET['tym'])."' "; If(!Empty($_GET['post']) && $_GET['post']!='*') $query.="AND g.pozice='".mysql_real_escape_string($_GET['post'])."' "; $query.="ORDER BY PPG DESC Limit 1"; $result = mysql_query($query) or die(Mysql_error()); While($results=MySQL_Fetch_Assoc($result)) { $teams[]=$results; $cas=number_format($results['Time']/60,2); ?> Ve výsledku do tabulky to zobrazuji takto: <td><?php @print round( 100-$results['PPG']/$results['Shoot']*100,2);?>%</td> Děkuji za radu PS: oprava na řádku 10 |
||
Alphard Profil |
#2 · Zasláno: 7. 9. 2013, 13:52:23
V order by může být výraz, takže tam dejte ten výpočet. Nebo si to spočítejte jako další sloupec a jen se na to odkažte (nejlépe přes alias).
|
||
table Profil * |
#3 · Zasláno: 7. 9. 2013, 14:07:46
Zkusil jsem a stále mi to řadí jinak než by mělo.
|
||
quatzael Profil |
#4 · Zasláno: 7. 9. 2013, 14:17:19
table:
„Zkusil jsem a stále mi to řadí jinak než by mělo.“ Jak jinak? Pro obrácené pořadí se používá ASC. A za LIMIT dát 1 snad znamená, že Ti to vyhodí jen jeden řádek, ne? |
||
table Profil * |
#5 · Zasláno: 7. 9. 2013, 14:20:38
Ano momentálně chci aby mi to vyhodilo jeden řádek, zkusil jsem i obrácené pořadí a stále to zobrazuje jednoho a toho samého hráče, což je špatně.
Druhá věc je že nevím jestli jsem to udělal správně.(PHP se teprve učím) Přidal jsem toto: $procento=@print round( 100-$results['PPG']/$results['Shoot']*100,2); Pokud je to blbě tak mě hned neukamenujte :D |
||
juriad_ Profil * |
#6 · Zasláno: 7. 9. 2013, 14:29:02
10. radek bude:
$query.="ORDER BY PPG/Shoot DESC LIMIT 1"; |
||
table Profil * |
#7 · Zasláno: 7. 9. 2013, 14:34:17
Zkoušel jsem to už dříve ale nezobrazilo mi to správně, nyní ano, Nechápu ale děkuji za radu
|
||
Kubo2 Profil |
#8 · Zasláno: 7. 9. 2013, 22:13:46
table:
„aby se mi to řadilo podle průměru z PPG/Shoot“ [...] ORDER BY AVG(PPG), AVG(Shoot) [...] ?
AVG() je sql funkcia, počítajúca priemer (tzv. agregačná funkcia). |
||
Časová prodleva: 11 let
|
0