Autor | Zpráva | ||
---|---|---|---|
Paja_ Profil * |
#1 · Zasláno: 5. 8. 2009, 19:32:01
Ahoj, chtěl bych se optat, jak vyřešit dotaz, když budu chtít z tabulky vytáhnout první 3 mužstva (např. podle bodů - to je snadné), ale zároveň bych chtěl, aby se vždy jedno (domácí) mužstvo zobrazovalo mezi nima, i když bude mít menší počet bodů než (ve skutečnosti první tři) např.: Sparta 10, Slavia 8, Bohemka 7 a Liberec 5, tak aby se vypsaly v pořadí Sparta, Slavia, Liberec
Díky za odpověď. |
||
Joker Profil |
#2 · Zasláno: 5. 8. 2009, 20:02:06 · Upravil/a: Joker
Paja:
SELECT * FROM tabulka ORDER BY (id=5), body DESC ...vybere nejdřív tým s ID 5 a potom ostatní sestupně podle bodů edit: where podmínka bude asi zbytečná |
||
Paja_ Profil * |
#3 · Zasláno: 5. 8. 2009, 21:53:34
Pokud použiji tento dotaz, tam mi to nefunguje :(
<?php $query = mysql_query("SELECT * FROM tabulky ORDER BY (id=1), body DESC LIMIT 3"); while ($zaznam = mysql_fetch_assoc($query)){ $tym = $zaznam["tym"]; echo "<tr><td>$tym </td></tr>"; } ?> |
||
MCKAY Profil |
#4 · Zasláno: 5. 8. 2009, 21:57:52
Ten dotaz ti bude fungovat pouze za předpokladu, že máš tabulku v databázi správně nastavenou... když tak ji se m pošli...
|
||
Paja_ Profil * |
#5 · Zasláno: 5. 8. 2009, 22:06:24
CREATE TABLE `tabulky` (
`id` int(11) NOT NULL AUTO_INCREMENT, `tym` varchar(255) NOT NULL, `v` int(11) NOT NULL, `r` int(11) NOT NULL, `p` int(11) NOT NULL, `skore` int(11) NOT NULL, `body` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM; |
||
MCKAY Profil |
#6 · Zasláno: 5. 8. 2009, 22:28:59 · Upravil/a: MCKAY
Když to vypadá takto:
$query = mysql_query("SELECT * FROM tabulky ORDER BY (id=1), body DESC LIMIT 3"); while ($zaznam = mysql_fetch_assoc($query)){ echo $zaznam["tym"]; } Tak mi to funguje, napadly mě dvě možné příčiny, nejseš připojený k databázi, a nebo v databázi nemáš žádné řádky. //také je možné že jsem jen nepochopil jak to má vypadat |
||
Joker Profil |
#7 · Zasláno: 6. 8. 2009, 09:17:19
Paja:
„Pokud použiji tento dotaz, tam mi to nefunguje :(“ Tak to je jasný, co tomu je: Je to rozbitý. Co znamená "nefunguje"? |
||
Kcko Profil |
#8 · Zasláno: 6. 8. 2009, 10:00:11 · Upravil/a: Kcko
SELECT * FROM tabulka ORDER BY (id=1) DESC, body DESC |
||
Kajman_ Profil * |
#9 · Zasláno: 6. 8. 2009, 10:22:13
select * from (SELECT * FROM tabulka ORDER BY (id=1) DESC, body DESC limit 3) t order by body desc |
||
Paja_ Profil * |
#10 · Zasláno: 6. 8. 2009, 11:12:53
Kajman_
přesně to, co jsem potřeboval, díky - samozřejmě i ostatním...jen by mě zajímalo, jak to vlastně pracuje |
||
Časová prodleva: 15 let
|
0