Autor Zpráva
KubaFibi
Profil
Moje db vypadá přibližně takto:

id     jmeno
1      aaaa
2      bbbb
3      cccc
4      dddd

Potřebuji vypsat jmeno a seředit je takto: První musí být jmeno s id=3 a pak ostatní jmena řadit dle id.

Zkoušel jsem toto:
$sql = mysql_query("SELECT jmeno FROM ... ORDER BY id=3, id");
while($zaznam = mysql_fetch_array($sql)){
echo $zaznam['jmeno']."<br>";
}
ale vypsalo mi toto:
aaaa
bbbb
dddd
cccc
Když jsem to zkoušel různě modifikovat, tak mi to jmeno, které jsem chtěl jako první vypsalo vždy jako poslední. Tak jsem zkusil připsat tam DESC, ale opět bez úspěchu. cccc bylo opět poslední.

Prosím poraďte co s tím, protože už opravdu nevím.
juriad
Profil
http://www.linuxsoft.cz/article.php?id_article=826

vysvětluje proč je třeba řadit DESC u id=3
KubaFibi
Profil
Jasně už to chápu. Článek také vysvětluje, proč to fungovalo když jsem tam zkusil napsat:
... ORDER BY id<>3, id ... - to je tedy ekvivalentní s ... ORDER BY id=3 DESC, id ...

Děkuji
Kcko
Profil
KubaFibi:
Mrkni na další varianty ve speciálních případech http://www.rjwebdesign.cz/Blog/MYSQL/20070721-Specialni-Razeni-Dat-V-Databazi-MySQL

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:

0