[ vortex77 @ 07.06.2007. 13:39 ] @
Evo problema:

u tabeli imam jednu kolonu sa vrednostima:

0001
00011
00011001
0200
02001
020012
.....

format polja je VARCHAR(8) pri cemu je najmalji unos 4 karaktera.


Potrebno mi je da u sql queryju napravim select upit koji bi mi vratio najveci "broj" za jednu cetvorocifrenu osnovu.
Npr. ako je osnova 0001 (u navedenim vrednostima) trebalo bi da mi vrati 00011001 i tako za sve vrednosti u bazi.

Ja sam probao na vise razlicitih nacina, ali bezuspesno.

POMOC!!!!
[ goranvuc @ 07.06.2007. 13:48 ] @
Code:

SELECT MAX(CAST(Polje AS int)) AS Najveci, LEFT(Polje, 4) AS Prefiks FROM Tabela GROUP BY LEFT(Polje, 4)

Na to si mislio?

Ups, sad videh da je MySQL a ne MS SQL ;) Ko zna, mozda ti i ovo nesto pomogne.
[ vortex77 @ 08.06.2007. 07:54 ] @
Veliko hvala!!!!

Uz manje modifikacije dobio sam sta je trebalo!!!
[ vortex77 @ 12.06.2007. 07:45 ] @
Nova radna nedelja... :)

Probao sam implementaciju SQL koda i radi ok, ali se pojavio jedan problem. Prilikom sortiranja dobijam maximalan unos za datu cetvorocifrenu osnovu, ali mi je potrebno malo drugacije resenje....
Naime, postavljeni upit bi trebalo da mi vrati SVE unose sa maximalnim brojem cifara:

Za unose

0001
00010
0001001
0001002
0001003

rezultat bi trebao da bude:

0001001
0001002
0001003

[ chachka @ 18.06.2007. 11:11 ] @
Code:

SELECT t1.polje, LEFT(t1.polje, 4) AS prefiks
  FROM tabela AS t1
 WHERE LENGTH(t1.polje)
     = (SELECT LENGTH(MAX(t2.polje))
          FROM tabela AS t2
         WHERE LEFT(t2.polje, 4) = LEFT(t1.polje, 4))