Tema: Re: SQL + NATURAL ORDER
Autorius: Jornada Del Muerto
Data: 2009-09-27 11:49:03
    Skaitykis apie MSSQL regexp'us (regular expressions), bet vistiek cia 
visu variantu neapskaiciuosi kiek nesamoniu gali vartotojas privesti ir teks 
deliot greiciausia nuliukus, nes SQL rusiuoja gerai tik ne nuo vidurio ar 
galo o nuo pradziu, atveju jei pats ta info vedi sort order laukas tinka, 
atveju jei tai veda useris destytis tures nuliukus...

    Dar jei poreikis yra tik vesti pvz. NAME, NAME1, NAME100 o ne koki 
NAME1BBA1, NAME100BBA10  gal su regexpu ka sumastysi...

    Arba rasaisi MSSQL funkcija kuri sutvarko lauka tvarkingai (islygina 
rasta kiekviena atskira numeri pvz po 5 nulius jei randa atskira skaiciu, 
jei skaicius 2 zenklis deda priekyj 3 nulius, jei 4zenklis 1 ir t.t... bet 
cia ir toks..... variantas...

    Galima dar su DB struktura sprest, darant pavadinimui viena lauka o 
numeriui prie pavadinimo kita lauka, tada rusiuoji atitinkamai, Order By 
Name, Number ir vsio.... tiek UI gali vest i atskirus laukus, tiek pats gali 
ivesta info isparsinti irasant i DB ir naudot atskirai, bet neaisku ko 
tiksliai reikia nes cia jeigu tu skaiciu prirasys atskiru pavadinime kokia 
10 ar jie bus pvz astunzenkliai tai vistiek userio debilizmo neisspresi....

"all set" <allset@inbox.lt> wrote in message 
news:h9gn0v$ekh$1@trimpas.omnitel.net...
> rasiau gi, kad sitas workarround'as netinka :) Nerusiuoja jis taip kaip 
> reikia ...
>
> "CGI 600" <nespamink@spamas.lt> wrote in message 
> news:h9ge5k$6jo$1@trimpas.omnitel.net...
>> ziu nesiseka :)
>>
>> order by LEN(name), name
>>
>> alu darbe pastatysi :))
>>
>>
>> all set wrote:
>>> Sveiki,
>>>
>>> reikia isrusiuoti pagal DB tekstini lauka naturalia tvarka, ty, kaip 
>>> zmones rusiuoja o ne kaip kompiuteris.
>>> pvz:
>>> NAME
>>> folder1,
>>> folder10,
>>> folder2,
>>> folder8
>>>
>>> reikia, kad buti isrusiuota:
>>> NAME
>>> folder1,
>>> folder2,
>>> folder8
>>> folder10.
>>>
>>> Kompas arba order by NAME ASC rusiuoja, kaip parodyta pirmame stulpelyje 
>>> virsuje.
>>>
>>> Tai riekia padaryti MySQL db. Gugle radau navarota, kad "order by 
>>> laukas" reikia parasyti "order by laukas + 0". Bet kad neveikia sitas 
>>> dalykas.
>>>
>>> DB: MySql 5.1 atrodo. ne enterprise.
>>> Cia gal tas "+ 0" veikia tik enterprise versijoje? Bet abejoju. Gal kas 
>>> zinot koki work arround?
>>> Viena bandziau: order by length(name), name asc. Bet to neuztenka.
>>>
>>> PS Toks rusiavimas kaip man reikia yra MAC kompuose, kur Apple'as 
>>> natural order rusiuoja folderius.
>>>
>
>