Zadejte hledaný výraz...

Řazení podle ceny

tomix
verified
rating uzivatele
(5 hodnocení)
20. 1. 2011 19:25:46
Ahoj, nevíte někdo prosím jak seřadit záznamy z databáze podle ceny? Použil jsem ORDER BY CENA ASC ale neřadí to správně, sloupec s textem to řadí bezproblémově... už do toho koukám asi hodinu a jsem z toho úplně v lese :( Díky
20. 1. 2011 19:25:46
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601796
Nechceš sem poslat tvar tvého selectu? Máš sloupec v databázi ve správném formátu?
20. 1. 2011 19:37:03
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601795
No, bez výpisu aspoň časti dát z DB ti ťažko niekto poradí, keď nevieme, ako vyzerá výstup. Prípadne aj SQL príkaz, lebo ORDER BY cena ASC by malo bez problémov fungovať.
20. 1. 2011 19:37:24
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601794
Vidim to na blbe nastaveny sloupec CENA v db.... vsadil bych se, ze tam mas (var)char .... zmen to na DECIMAL
K hodnote musis pristupovat jako k cislu, ne jak k retezci
20. 1. 2011 19:39:03
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601793
tomix
verified
rating uzivatele
(5 hodnocení)
20. 1. 2011 19:43:54
Příkaz mam takový:
Čísla v db ve sloupci CENA jsou takto: 12.50, 10.80, 62.50, 33.50 atd
20. 1. 2011 19:43:54
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601792
A v jakém typu máš sloupec cena v DB? Zkus si ty čísla jen tak cvičně přespat na celá. Jinak to vypadá v pořádku.
20. 1. 2011 19:52:14
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601791
tomix
verified
rating uzivatele
(5 hodnocení)
20. 1. 2011 20:04:02
Napsal kuzmic;616893
A v jakém typu máš sloupec cena v DB? Zkus si ty čísla jen tak cvičně přespat na celá. Jinak to vypadá v pořádku.
Mám tam VARCHAR .... když jsem tam dal DECIMAL jak tu někdo psal tak to funguje skvěle, jen při výpisu když mám číslo 10 (bez desetin) se mi vypíše 10.00 což nechci (desetiny chci vypsat jen když tam jsou)
20. 1. 2011 20:04:02
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601790
Tak to nedávej jako decimal ale int
20. 1. 2011 20:11:36
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601789
hm
verified
rating uzivatele
(20 hodnocení)
20. 1. 2011 20:16:27
Napsal kuzmic;616901
Tak to nedávej jako decimal ale int
to je blbost dkyz potrebuje mit desetinnou carku :D:D spis to proste pri vypisu normalne projed podminkou :)
20. 1. 2011 20:16:27
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601788
tomix
verified
rating uzivatele
(5 hodnocení)
20. 1. 2011 20:17:18
Dal jsem INT a všechny čísla se zaokrouhlily na celé čísla, tzn přišel jsem o desetiny. Do db nejde ani desetinná tečka ani čárka napsat
20. 1. 2011 20:17:18
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601787
Špatně jsem si to přečetl, myslel jsem že se chceš zbavit těch desetin.
20. 1. 2011 20:18:55
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601786
A čo takto DOUBLE s 2 Decimals? Malo by to fungovať, aspoň cez phpmyadmin to zoraďuje korektne.
EDIT: Moja chyba, nerieši to problém so zobrazovaním čísla ...
20. 1. 2011 20:19:31
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601785
Napsal tomix;616898
jen při výpisu když mám číslo 10 (bez desetin) se mi vypíše 10.00 což nechci (desetiny chci vypsat jen když tam jsou)
To už je otázka formátování, ne databáze.
Převeďte ceny z řetězců na float a PHP přestane zobrazovat desetinné nuly.
Jinak je vaším přítelem také funkce number_format().
20. 1. 2011 20:21:10
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601784
tomix
verified
rating uzivatele
(5 hodnocení)
20. 1. 2011 20:30:43
Tak jsem narychlo vygooglil toto řešení.... echo str_replace('.00','',$v); které vrátí stejný výsledek jako FLOAT který jsem bohužel neznal.
Nyní už je vše správně. Pokud by to někdo někdy potřeboval, tak sloupec s cenou nastavit na DECIMAL (diky winexec) a výpis prohnat přes FLOAT (díky Martin Schlemmer)
A taky díky všem ostatním za snahu
20. 1. 2011 20:30:43
https://webtrh.cz/diskuse/razeni-podle-ceny/#reply601783
Pro odpověď se přihlašte.
Přihlásit