Autor | Zpráva | ||
---|---|---|---|
stepanka Profil * |
#1 · Zasláno: 9. 3. 2010, 21:25:48
Ahoj,
mohl by mi prosím někdo poradit? Mám sloupec typu varchar, kde jsou uloženy jak číselné tak textové hodnoty. Momentálně vybírám ty šíselné, ale seřazují se mi podle abecedy, ne podle čísla (od nejmenšího po největší). Tuším, že existuje nějaká funkce, která se dává za ORDER BY, ale nemůžu vygooglit, která to je. Nabízí se mi ORDER BY CAST(h.hodnota), ale to mi nefunguje. Měla by ale existovat nějaká jiná.. Nevíte prosím někdo? Moc děkuju |
||
Taps Profil |
#2 · Zasláno: 9. 3. 2010, 21:33:16
stepanka:
máš na mysli order by field? Viz např. http://www.rjwebdesign.net/Blog/MYSQL/20070721-Specialni-Razeni-Dat-V-Databazi-MySQL |
||
stepanka Profil * |
#3 · Zasláno: 9. 3. 2010, 21:41:55
Taps:
Děkuju za reakci, ale to asi ne... Ten dotaz vypadá nějak takto: mysql_query("SELECT h.nazev_cz as hodnota, h.id_hodnota FROM ".TBL_PREFIX."sablony_hodnoty h JOIN ".TBL_PREFIX."sablony_polozky sp ON sp.id_polozka = h.id_polozka WHERE sp.id_polozka = ".$row_var['id_polozka']." ORDER BY IF(sp.nazev_cz='Dioptrie' or sp.nazev_cz='Zakřivení', CAST(h.nazev_cz AS INTEGER) DESC, h.nazev_cz)") or die (mysql_error()); Dioptrie a zakřivení jsou číselného charakteru, tak bych je chtěla seřadit podle čísla, ostatní položky, textového charakteru, normálně podle podle abecedy. Jde to vůbec? |
||
Kajman_ Profil * |
#4 · Zasláno: 9. 3. 2010, 22:03:35
Možná
ORDER BY IF(sp.nazev_cz='Dioptrie' or sp.nazev_cz='Zakřivení', CAST(h.nazev_cz AS INTEGER), null) DESC, h.nazev_cz |
||
stepanka Profil * |
#5 · Zasláno: 9. 3. 2010, 22:32:57
Kajman:
Děkuju za příspěvek. Bohužel, nic nevypíše, ani chybu. Ty číselné hodnoty jsou ve tvaru +1.00, +1.25, +1.50, +1.75, -2.00, -2.25, -2.50, atd.. Tzn, vždy se znaménkem a desetinnou tečkou. Je možné, že si s tímhle formátem neví rady.. |
||
Kcko Profil |
#6 · Zasláno: 9. 3. 2010, 22:46:22
Mozna Ti pomuze toto, uz si to moc nepamatuji tak si z toho zkus neco vybrat
http://www.rjwebdesign.net/Blog/MYSQL/20090702-Zajimava-uloha-v-MYSQL |
||
Kajman_ Profil * |
#7 · Zasláno: 9. 3. 2010, 23:11:31
stepanka:
V integeru jsou jen celá čísla. Zkuste místo toho třeba decimal(4,2). A pokud to nevypíše žádný řádek ani to neskončí chybou, tak podmínkám ve where a spojení neodpovídají žádné záznamy. Řazení na to nemá mít vliv. |
||
stepanka Profil * |
#8 · Zasláno: 11. 3. 2010, 10:52:02
Kcko, Kajman:
Moc vám oběma děkuju za reakce, ale bohužel se mi to tímto způsobem nepovedlo. Přidala jsem další sloupec s názvem "řazení", určila si pořadí položek a řadím podle něho. |
||
Hombre Profil * |
#9 · Zasláno: 13. 3. 2010, 19:22:36
stepanka:
Ahoj štěpánko, vím že tady se to nehodí psát ale šetl jsem tvou diskuzi o impplementaci platby paypal na webu. Mohla by jsi mi poradit jak na to, nebo zda ti někdo pomohl? díky. Napis mi bud tady nebo na mejla hombre27@seznam.cz díky moc za pomoc :-). Láďa. |
||
Časová prodleva: 14 let
|
0