Ik heb een klein probleempje met de SQL Sort Functie..
Ik heb de volgende kolom genaamd " naam". Als ik deze doormidel van SORT sorteer krijg ik het volgende..

Sander
Sietske
Trynke
linda
nico

De namen met aan het begin een hoofdletter sorteerd hij apart van de namen die beginnen met een kleine letter..
Wat kan ik hier aan doen, het veld type dat ik heb gebruikt is " Varchar" ..
Wat is er mis met: ORDER BY naam ASC ?
Naja, normalitair komt letter l voor de s.
Maar dat doet hij nie.. :S
ACS?? waar staat dat voor btw??
ASC staat voor Ascending -> oplopend, dus van laag naar hoog (a -> z)

De andere is DESC, Descending -> aflopend dus van hoog naar laag (z -> a)
Hoe ziet de query er uit en waarom heb je daar SORT in staan?
in de database staat dus een kollom "naam" en hij zou gebruikt moeten maken van de sort functie om de namen in alfabetische volgorde te zetten..

Nu is het geval dat hij de namen met hoofdletter en namen met kleine lettervoorop apart ordert.

Anne
Bergsma
anne
bergsma

Zoals bovenstaand..
Terwijl het:

Anne
anne
Bergsma
bergsma

eigelijk moet zijn..

Frank schreef op 21.06.2006 17:18
Hoe ziet de query er uit en waarom heb je daar SORT in staan?
Ik herhaal de vraag nog maar eens een keertje...
De verklaring is heel simpel. Er wordt gesorteerd op de ASCII waarden van de characters. Hoofdletter 'A' heeft ASCII waarde 65, 'B' 66, enz. Kleine letter 'a' heeft ASCII waarde 97 en komt dus later dan de 'B'.
Ik zal de oplossing hier maar plaatsen, anders wordt het waarschijnlijk nooit meer wat...

SELECT 
  naam 
FROM 
  tabelnaam
ORDER BY 
  naam ASC
@Frank: Is het zo dat SORT hoofdlettergevoelig is en ORDER BY niet?

Reageren