Li stai memorizzando come testo(nvarchar
), ecco perché ottieni ordine lessografico
. Ciò significa che ogni personaggio viene confrontato tra loro da sinistra a destra. Quindi 4000
è "superiore" a 30000
(l'ultimo zero non ha importanza poiché il primo 4 è già maggiore del 3).
Quindi il modo corretto è memorizzarlo come valore numerico. Tuttavia, sembra impossibile poiché utilizzi anche valori come 16.000 with 4.1/2"DP
. Quindi aggiungerei un'altra colonna, una per il valore numerico in base al quale desideri ordinare e l'altra per la rappresentazione testuale.