MateuszS
12.09.2010, 20:47:36
Witam, mam mały problem z pozycjonowaniem rekordów. Mam tabelę Position i w niej jest pozycja (int) tego rekordu no i pozycjonuje je za pomocą zapytania z ORDER BY `Position` ASC. Ale jeżeli mam np więcej niż 10 rekordów to pozycjonuje wg pierwszej cyfry a nie liczby, np chcę aby to wyglądało tak: 1,2,3...9,10,11,12,13... a wygląda tak: 1,10,11,12,13,2,3,4,5... pozycjonuje wg pierwszej cyfry. Wiem że można by to zrobić za pomocą wstawiania zer przed tymi liczbami ale to trochę niewygodne i nieestetycznie wygląda w panelu admina, natomiast przerobienie tego aby pozycjonowało nie z poziomu zapytania a np. przez kod PHP i sortowanie jest troszkę niewygodne i rozwali mi pół panelu, nie wiedziałem że taki myk może się zrobić ;/ Da się to jakoś poprawić?
wookieb
12.09.2010, 21:03:49
"pozycjonowanie"

? SORTOWANIE
Ustaw typ kolumny na liczbową
everth
12.09.2010, 21:10:18
Na pewno w tabeli nie masz integer tylko varchar. Na szybko to możesz załatwić tak:
SELECT `Position` FROM moja_tabela ORDER BY CAST(`Position` AS UNSIGNED)
MateuszS
12.09.2010, 21:22:17
wookieb, sory no o tej porze zdarzy się pomylić pojęcia, które są w moim przypadku bliskoznaczne, ale dzięki, widocznie przez przypadek/z pośpiechu ustawiłem pole na TEXT o_O