webForumDet fria alternativet

ORDER BY i Access

17 svar · 461 visningar · startad av Prästen

PrästenMedlem sedan dec. 2000537 inlägg
#1

Tjenare, har en Access databas som har 5000 poster.

Men när jag gör en SQL: ORDER BY "tabell" så fixar den inte det, visst lite hamnar rätt men det mesta hamnar huller om buller. Klarar inte Access så många poster eller?. Spelar det nån roll om det finns "spacemellanrum" i posterna?, påverkar det?.

@ndersMedlem sedan juni 200032 969 inlägg
#2

5000 poster är inte speciellt mycket, och en vanlig ORDER BY ska inte vara några problem.

Hur ser din SQL-fråga ut?

Spelar det nån roll om det finns "spacemellanrum" i posterna?, påverkar det?.

Ja, det spelar roll, men det beror lite på var någonstans spacen finns i posterna. Space är ett tecken som s.a.s. sorteras ganska först.

Mvh

Engine^Medlem sedan dec. 20003 887 inlägg
#3

Vad sorterar du efter - vilken fälttyp och vad för data är det?

m_soderlundMedlem sedan sep. 20026 425 inlägg
#4

Använd helst understreck _ i dina fältnamn i stället för mellanslag. :)

PrästenMedlem sedan dec. 2000537 inlägg
#5

såhär ser den ut

SELECT * FROM orter ORDER BY stad

kan det vara att jag har lite "space" här och var i posterna?, och hur gör jag då för att ta bort dem lättast?.

m_soderlundMedlem sedan sep. 20026 425 inlägg
#6

Har du provat med denna SQL-sats?

SELECT * FROM orter ORDER BY star [b]ASC[/b]

alternativt

SELECT * FROM orter ORDER BY star [b]DESC[/b]

Jag vet inte hur det går med mellanslagen i posterna. :(

PrästenMedlem sedan dec. 2000537 inlägg
#7

det verkar inte göra nån skillnad, det den har svårt med speciellt är Å Ä Ö , det tolkar den som A A O .. hmm, men det var lite anmärkningsvärt att den inte klarar å göra en sortering. underligt. undrar vad som kan va fel.

@ndersMedlem sedan juni 200032 969 inlägg
#8

Hur ser datat ut? Om vissa av värdena i fältet stad börjar med mellanslag sorteras de först.

Angående sorteringen: http://www.webforum.nu/showthread.php?s=&postid=619922#post619922

PrästenMedlem sedan dec. 2000537 inlägg
#9

det kan tex vara "Linköping norra" tex så det kan vara lite mellanslag och sånt.

Men databasen är skapad i Webmatrix, för jag har inte Access programmet.

@ndersMedlem sedan juni 200032 969 inlägg
#10

Kan du exemplifiera hur du menar att det sorteras fel?

Engine^Medlem sedan dec. 20003 887 inlägg
#11

Det sorteras i ordning på ASCII-värde av tecknen.

PrästenMedlem sedan dec. 2000537 inlägg
#12

tex Gullspång kommer först, gnosjö, sen alla städer som börjar på Å Ä sen börjar A-städer äntligen

Engine^Medlem sedan dec. 20003 887 inlägg
#13

Du råkar inte ha något skumt tecken först på Gullspång och dom andra som verkligen inte ska hamna först?

Problemet ligger knappast i Access utan snarare är det ett handhavandefel, som det så vackert heter ;) Typ en inställning som är knäpp eller som jag skrev - en felinmatning...

PrästenMedlem sedan dec. 2000537 inlägg
#14

det enda som jag kan tänka mig är att det skulle vara mellanslag i början av stads-namnet eller efter. det är nog det enda.

Engine^Medlem sedan dec. 20003 887 inlägg
#15

Är det inte något sånt, så kommer inte jag på något mer förutom att det skulle finnas en obskyr inställning någonstans...

[X] Jävlas med sorteringordning :OO

nikoMedlem sedan juni 20022 599 inlägg
#16

Blir det bättre om du gör så här?

select asc(trim(stad)),* from orter order by 1

Isåf kan du nog köra en:

update orter set stad=trim(stad)

och sen kolla tråden @nders länkade till.

PrästenMedlem sedan dec. 2000537 inlägg
#17

Prisa Gud!!!, Det funkade klockrent!, perfekt!!, Tack Tack!!!!

hmm kan du förklara hur du gjorde med de båda SQL satserna, hur funkade det egentligen?.

hmm, eller vänta, hmm nästan klockrent ska jag lägga till, några städer kom lite fel, men de flesta var rätt dock :)

nikoMedlem sedan juni 20022 599 inlägg
#18

Well ..

update orter set stad=trim(stad)

Trimmar bort inledande och avslutande mellanslag i kolumnen "stad".

select asc(trim(stad)),* from orter order by 1

Sorterar på ASCII-värdet på första tecknet i det trimmade "stad", vilket får inledande "å", "ä" och "ö" att hamna rätt. Dock är det bara en nödlösning eftersom den fortfarande sorterar fel om det finns "å", "ä" och "ö" i andra positioner. Och därför bör du kolla @nders länk, som sagt.

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)