Hej Hej, kollationsordning ? eller vänta Hej, Hej =o) Hej jag fixade o trixade lite återstår at trixa lite till med det verkar på rätt väg iaf.ORDER BY probleem
har detta problem att när jag gör en order by i en varchar kolumn så sorteras det på detta vis:
1p
2s
42
43
44
6g
8v
aa
ab
........
sen börjar det om o sorterar på tre tecken
1io
211
213
345
567
aan
aap
bcd
cda
osv
kan man inte få det sorterat en gång bara så den inte sorterar flera gånger för varje antaltecken dvs den ska inte bry sig om antal tecken.
tacksam fö hjälpSv: ORDER BY probleem
Hur data sorteras beror på hur du installerat din databasmotor, dvs vilket kollationsordning du använder. Detta innebär att om du kör på en annan dator så kan soretringen mycket väl bli annorlunda.
Mitt tips är dörför att kolla i hjälpen om du kan ändra kollationsordningen temporrt. Ett annat tips är att kopiera din data till en temptabell där det inte är varchar utan fixed längd innan du sorterar. Det sistnämnda är dock inte alltid en säker metod, likaväl som den kan vara rejält långsam om du har mycket data.
Lycka till!
// JohanSv:ORDER BY probleem
har sökt på det ordet men hitta inget.
har funderat om jag ska skapa en annan tabell men fixed längd som du skrev.
har alldrig gjort en tmptabell vilket är det bästa sättet att göra det på skaman köra nån komando sen när man ska uppdatera tmptabellen.
a jag vet många frågor på en gång =/Sv: ORDER BY probleem
kanske man kan göra sorteringen VB6 i recordsetet ?!
att man converterar den kolumnen eller nått liknande
ska försöka där så återkommer jag sen Sv: ORDER BY probleem
Att hitta info om kollationer är inte så svårt om man öppnar hjälpen... I min engelska hjälpfil hittade jag en hel del bland annat följande (obs osorterat info):
Collation Precedence
Selecting a SQL Collation
COLLATIONPROPERTY
collations, overview
COLLATE
Att skapa en temptabell är inte svårare än att skapa en permanent tabell, syntaxen är exakt densamma. Skillnaden ligger i att en temptabell namnges med ett # i början. Glöm sedan inte att rensa bort din temptabell när du är klar (drop table).
Förresten, även när man skapar en tabell så kan man ange individuell kollationsordning för den tabellen, se vidare i hjälpen under Create table.
När det gäller funderingen kring sortering i recordsetet i VB så kanske det är möjligt, men det är klart långsammare. Använd istället databasen och dess funktioner för att hantera din data. Databasen är ju trots allt designad för att hantera data, VB är designad för att koda program...
Lycka till!
// JohanSv:ORDER BY probleem
Du har nog rätt med att det tar tid i VB så det är bäst o hantera datat i dess miljö.
Ska man skapa en storedprosedur då eller hur ska man göra för det ska ju köras med automatik eller ska man skapa en service? har alldrig som sagt skapat en tmpTabell o droppat den för att senare fylla den osv.
kan du bara ge mig lite vägledning om vilket sätt som är bäst.
tackar på förhandSv: ORDER BY probleem
tack för alla svar.