Autor Zpráva
Tomas87
Profil *
Dobrý deň,
chel by som sa spýtať, či by ste nevedeli poradiť s nasledovným problémom. Mám tabulku a v nej 2 polia, podľa ktorých musim zoraďovať údaje. (najskôr podľa 1., potom podľa 2.) Čiže klasika:

ORDER BY field1, field2 ASC

ale problém je, že vo field2 mam text s číslami, konkrétne typ: typ 2, typ 1, typ 13, typ 55. Ak takto zoradím, tak sa poradie premieša, nebude nasledovať v poradí: 1,2,13,55 :(
Po chvíľke hĺadania som tento problem vyriesil takto:

ORDER BY field1, field2*1 ASC
teraz uz je to spravne, ale ak začnem spájať 2 tabuľky, opať nezafunguje :/

napr.
SELECT field1, field2 FROM table1,table2 WHERE table1.id=table2.id AND table1.id='123' ORDER BY field1, field2*1 ASC

skúšal som aj SELECT obaliť, ale opať nepomohlo:
SELECT aa.* FROM (**select**) aa ORDER BY aa.field1, aa.field2*1 ASC

vedeli by ste niekto poradiť? Vopred ďakujem
Tori
Profil
Tomas87:
Buď rozdělit sloupec do dvou (typ, číslo), nebo přidat sloupec navíc, kde bude jen to číslo. Pokud budete potřebovat někde vybírat jednotlivé hodnoty typů (třeba do <select>u), hodí se vám to první (SELECT DISTINCT typ...). Jestli ne, tak stačí druhá možnost - sloupec s číslem by sloužil jen na seřazení výsledku. Na stackoverflow najdete užitečnou funkci, kterou můžete použít k updatu existujících dat.

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: