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

ORDER BY vremenska_zona

[es] :: Oracle :: ORDER BY vremenska_zona

[ Pregleda: 1887 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

theH

Član broj: 102161
Poruke: 51
*.mbb.telenor.rs.



+2 Profil

icon ORDER BY vremenska_zona02.02.2012. u 13:08 - pre 148 meseci
Imam tabelu sa gradovima u jednoj koloni i vremenskim zonama u drugoj koloni. Postoji još i ID kolona.
Podaci su se čitali sortirani po ID. Sada je Moskva promenila vremensku zonu sa +3 na +4 i sortiranje po ID ubacuje Moskvu sa +4 između nekoliko njih od +3.

Sortiranje po koloni zona ne sortira kako treba, počinje od -1,-2,-3... a trebalo bi mi -12,-11,... Uz to tu su i zone +3:30. Jel može to nekako da se dovede u red?

 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3453

Jabber: djoka_l


+1462 Profil

icon Re: ORDER BY vremenska_zona02.02.2012. u 14:04 - pre 148 meseci
Jedino što ti pravi problem je što imaš zone koje u svom ofsetu imaju znak ":". Za potrebe sortiranja, dovoljno je da ":" zameniš decimalnom tačkom ("."), pa onda ofset da konvertuješ u NUMBER. To nije korektno, u smislu da +3:30 postaje 3.3, umesto da bude 3.5, ali to je potpuno nebitno. Jedino je bitno da će 3.3 upasti u sortirane podatke između 3 i 4.

Evo i upit:

Code (sql):

SELECT *
FROM grad
ORDER BY to_number(REPLACE(vremenska_zona, ':' , '.')) ASC
 


Umesto jednostavnog rešenja, možeš da napraviš i svoju funkciju kojoj proslediš string sa oznakom ofseta, a ona vrati numerik uz sve kontrole ispravnosti vremenske zone...

[Ovu poruku je menjao djoka_l dana 02.02.2012. u 15:20 GMT+1]
 
Odgovor na temu

theH

Član broj: 102161
Poruke: 51
*.cpe.vektor.net.



+2 Profil

icon Re: ORDER BY vremenska_zona02.02.2012. u 21:31 - pre 148 meseci
E mnogo hvala!
Moje guglanje je otišlo u sasvim druge pravce, nisam ni pomišljao na ovako jednostavan pristup.
 
Odgovor na temu

darkosos
Darko Šoš
Beograd

Član broj: 5053
Poruke: 1131
*.dynamic.isp.telekom.rs.



+64 Profil

icon Re: ORDER BY vremenska_zona03.02.2012. u 07:35 - pre 148 meseci
Da, djoka se odlicno setio. A ovakav problem je u klasi "kako sortirati string"? Posto si ti imao "blizu" broj, ovo jeste najjednostavnije. Nekad treba uraditi lpad ili stavec... Hocu da kazem, zaboravi da su to vremenske zone i sve je lakse :)
 
Odgovor na temu

[es] :: Oracle :: ORDER BY vremenska_zona

[ Pregleda: 1887 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

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