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.