Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: sortowanie pola Varchar
Forum PHP.pl > Forum > Bazy danych > MySQL
peterlan
Witam, czy moglby mi ktos pomoc jak posortowac pole typu Varchar w php?

mam taki zapis:

  1. $result=mysql_query("SELECT * FROM uhren ".$is_cat." ORDER BY preis ASC");


ale przeczytalem ze nie sortuje mi sie to dlatego ze nie dziala sortowanie jako Varchar?
Nie chce zmieniac typu np na int, bo obawiam sie ze moge namieszac.
CzarnyGsm
Mógłbyś wkleić dokładny komunikat błędu jaki dostajesz bo wydaje się to dziwne. Wielokrotnie sortowałem pole typu varchar.
peterlan
tz nie sortuje mi dobrze cen, jakby faktycznie z typem danych byl problem,

ale znalazlem informacje ze do konwersji jest funkcja

  1. CAST()


zmienilem kod w ten sposob

  1. $result=mysql_query("SELECT * FROM uhren ".$is_cat." ORDER BY CAST (preis BY ASC)");


tylko ze ja sie nie za bardzo orientuje w php
nospor
To nie jest php a mysql... tam też przenoszę. Rozróżniaj te dwie rzeczy.
Co do cen: ceny do liczby a nie teksty i mają być polem liczbowym a nie tekstowym
peterlan
a moge to w mysql zmienic na pole INT?

czy moze z tego wyniknac jakis blad?
nospor
Zalezy jakie to są ceny.... jesli to są ceny po przecinku, to musisz zamienic na DOUBLE. Jeśli nie, to INT będzie ok

ps: Ty chyba nie masz zamiaru tego robić od razu na serwerze produkcyjnym?
viking
Zawsze w takich przypadkach trzeba sobie zadać pytanie czy nie nastąpi błędne zaokrąglenie. Możesz trzymać oddzielnie precyzję i wartość.
Crozin
@nospor: DOUBLE do przechowywania ceny? Nie, nie... w tym przypadku należy skorzystać z typu DECIMAL: http://stackoverflow.com/questions/3730019...resent-currency
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.