Bosna i Hercegovina



#1 07.11.2016-13:47
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,796


Subject: MySQL - sortiranje prema vlastitom kriteriju ORDER BY FIELD
select ime,prezime,oznaka
from table
order by oznaka

u gornjem primjeru sortirat ce nam upit prema oznakama abecednim redom, no sto ako zelimo sortirati prema nasem nekom redosljedu. Recimo da su oznake: a,b,c,d i zelimo sortirati prema ovom kriteriju: a,d,b,c.
Što moramo napraviti i dali je to uopce moguce?
Newton laže! Lake padaju brže!
Ovaj komentar je mijenjan 1 puta. zadnja izmjena 08.11.2016-11:35 od strane Avko. ↑  ↓

#2 07.11.2016-14:17
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,504


Subject: Re: MySQL - sortiranje prema vlastitom kriteriju
Naravno da je moguce i takvi kriteriji se veoma cesto koriste.
Ima ovdje negdje i primjer moje rejting pretrage.
To je u stvari pretraga prema rejtingu.
napr. a s d f g - redosled
a ima 1 poen
s- 2 itd.
to je kada je na prvom mjestu e sad na sledecim mjestima se povecava i za broj mjesta.
Naravno i svako drugo mjesto se povecava za broj koliko ima ukupni broj zbakova da nebi doslo do preklapanja itd..
Pozdrav
↑  ↓

#3 07.11.2016-14:21
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,796


Subject: Re: MySQL - sortiranje prema vlastitom kriteriju
Opet ja sa svojim voćem, al šta se može kad nevolim meso Grinning
imamo sljedecu tabelu koja se zove voce:
id_voćeimezemlja
11 Banana Afrika
12 Banana Južna Amerika
10 Banana Indonezija
6 Jabuka Hrvatska
7 Jabuka Bosna
1 Jabuka Slovenija
8 Kruška Hrvatska
4 Kruška Srbija
2 Kruška Bosna
5 Narandja Hrvatska
3 Narandja Afrika
9 Narandja Indonezija

Želimo prikazati sortirane podatke po vlastitom redosljedu. Naš redosljed je : Kruška, Jabuka, Banana, Narandja. Upotrebit cemo FIELD() funkciju u ORDER klauzoli i dobiti nas redosljed:

SELECT * FROM voce
ORDER BY FIELD(ime, 'Kruška', 'Jabuka', 'Banana', 'Narandja'), zemlja;
rezultat je sljedeci:
id_voćeimezemlja
2 Kruška Bosna
8 Kruška Hrvatska
4 Kruška Srbija
6 Jabuka Hrvatska
7 Jabuka Bosna
1 Jabuka Slovenija
11 Banana Afrika
12 Banana Južna Amerika
10 Banana Indonezija
5 Narandja Hrvatska
3 Narandja Afrika
9 Narandja Indonezija

no ako zelimo sortirati i prema polju zemlja onda cemo upotrebiti sljedeci upit:
SELECT * FROM voce
ORDER BY FIELD(ime, 'Kruška', 'Jabuka', 'Banana', 'Narandja') DESC, ime, zemlja;
rezultat bi bio sljedeci:
id_voćeimezemlja
2 Kruška Bosna
8 Kruška Hrvatska
4 Kruška Srbija
7 Jabuka Bosna
6 Jabuka Hrvatska
1 Jabuka Slovenija
11 Banana Afrika
10 Banana Indonezija
12 Banana Južna Amerika
3 Narandja Afrika
5 Narandja Hrvatska
9 Narandja Indonezija

Newton laže! Lake padaju brže!
Ovaj komentar je mijenjan 3 puta. zadnja izmjena 08.11.2016-11:59 od strane Avko. ↑  ↓

#4 08.11.2016-12:00
Avko Offline
Administrator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,796


Subject: Re: MySQL - sortiranje prema vlastitom kriteriju ORDER BY FIELD
i to smo rijesili,sada idemo dalje
Newton laže! Lake padaju brže!
↑  ↓

Stranice (1): 1


All times are GMT +01:00. Current time: 13.12.2017-06:19.