Predmet:Re: MySQL - sortiranje prema vlastitom kriteriju
Opet ja sa svojim voćem, al šta se može kad nevolim meso
imamo sljedecu tabelu koja se zove voce:
id_voće | ime | zemlja |
---|
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će | ime | zemlja |
---|
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će | ime | zemlja |
---|
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 |
zivot je moja domovina.
Ovaj post je ureden
3
puta. Posljednja izmjena 08.11.2016 11:59 od strane Avko.