Autor Zpráva
maxikingcompany
Profil *
Zdravím,
Potřeboval bych vypisovat data z databáze, aby se řadili od největšího id k nejmenšímu
Můj kód
mysql_query("SELECT * FROM tabulka ORDER BY id DESC")
Jenomže takto se řadí jen podle prvního čísla, takže například 10 je míň než 2 atd..
Jak by se to dalo vyřešit?
Medvídek
Profil
maxikingcompany:
Pokud je ID typu INT, tak je to nemožné, pokud je to VARCHAR, tak se to řadí textově.
maxikingcompany
Profil *
Je to VARCHAR.. v čem je tedy problém?
panther
Profil
maxikingcompany:
v čem je tedy problém?
1 je v abecedě před dvojkou, proto je 10 před 2 (porovnává se první znak). Čísla se mají ukládat jako čísla, řetězce jako řetězce.
maxikingcompany
Profil *
A de nějak udělat, aby to bylo podle velikosti čísla?
YoSarin
Profil
maxikingcompany:
podívej se na funkce cast a convert. Ty by ti snad mohly pomoct. Ale DALEKO lepší by bylo kdybys čísla neukládal jako stringy, ale jako čísla...
_es
Profil
maxikingcompany:
Máš nejaký vážny dôvod ukladať čísla ako text?
maxikingcompany
Profil *
Po uložení jako čísla mi to funguje. Děkuji za pomoc

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: