Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa sortiranjem

[es] :: MySQL :: Problem sa sortiranjem

[ Pregleda: 2362 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bloker
R. Srpska

Član broj: 79958
Poruke: 216
79.143.174.*



+3 Profil

icon Problem sa sortiranjem15.03.2010. u 08:01 - pre 170 meseci
Treba da sortiram korisnike po kućnom broju..
Ali problem mi se javlja kod zgrada gdje kućni broj izgleda nekako ovako 20-1, 20-2, ... 20-10, ... 20-20, 20-21...
I select mi vrati nešto ovako 20-1, 20-10, 20-11, .... 20-2, 20-20, 20-21..
E sada mi treba pomoć kako da ovo sortiram da mi ide 20-1, 20-2 ... 20-10, ...
Jedno rješenje mi je da prepravim da bude 20-01 ali to mi baš i ne odgovara..
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.adsl.beotel.net.



+13 Profil

icon Re: Problem sa sortiranjem15.03.2010. u 08:44 - pre 170 meseci
Hmm, nisam siguran, ali mozda bi bilo ok ako bi izbacio '-', tako da bi dobio brojeve:

Citat:


20-1 <==> 201
20-2 <==> 202
20-10<==> 2010
...



Probaj ovako nesto:

Code:


SELECT * FROM gdeGod
ORDER BY REPLACE(broj_zgrade, '-', '')

 
Odgovor na temu

bloker
R. Srpska

Član broj: 79958
Poruke: 216
79.143.174.*



+3 Profil

icon Re: Problem sa sortiranjem15.03.2010. u 09:09 - pre 170 meseci
Ovo mi baš i ne odgovara.. U jednoj ulici imam brojeve npr. od 1-300 i imam zgradu na broju 20 koja ima onakvu numeraciju.. tako da replace ne bih mogao raditi.. jer bi tek onda razbacao..
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-5.sezampro.rs.



+33 Profil

icon Re: Problem sa sortiranjem15.03.2010. u 13:36 - pre 170 meseci
A možda ovako nešto:
Code:
SELECT ulica, IF(LOCATE('-', broj) != 0, SUBSTR(broj, 1, LOCATE('-', broj)-1), broj) AS 'br', IF(LOCATE('-', broj) != 0, SUBSTR(broj, LOCATE('-', broj)+1), 0) AS 'podbr'
FROM adrese
ORDER BY ulica, br, podbr
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem sa sortiranjem15.03.2010. u 22:00 - pre 170 meseci
string se sortira kao string i 6 ce uvek biti vece od 1000 u tom slucaju ... te su ti resenja vrlo ogranicena

1. ako sortiras kao string moras da 10-1 napises ili kao 10- 1 ili 1-01 (to si reko da neces)
2. ako sortiras kao integer moras ili da razbijes broj u untegere u tabeli (brze, ali vise posla i zahteva menjanje i aplikacije i baze) ili da ga razbijes u integere funkcijom (sporije, napisao ti je nikola kako)
3. da sortiras na klijentu - isto "ok varijanta" ... generalno zavisno sta je klijent ali vrlo cesto mozes ceo smor sortiranja da prebacis skroz na klijent (css/java script u web okruzenju, ili nesto drugo za desktop) ako ti nije bitno da uzmes "prvih 10 sortiranih po ..." a obzirom da pricamo o brojevima zgrada ... to mozes laganica da prebacis na klijent posto ces tu vaditi uvek "sve koji odgovaraju zahtevu" ... sve i da su ti klijent i server na istoj masini, ne verujem da ces napisati bas toliko spor sort da ce to da znaci nesto .. (mysql ce svejedno to sortirati obicnim merge sort-om)
 
Odgovor na temu

[es] :: MySQL :: Problem sa sortiranjem

[ Pregleda: 2362 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.