I have these values: d1, d45, d79, d33, d100
I want to sort these variables in ascending order from my table.
What is the query to get the output as:
d1
d33
d45
d79
d100
I have these values: d1, d45, d79, d33, d100
I want to sort these variables in ascending order from my table.
What is the query to get the output as:
d1
d33
d45
d79
d100
What you want is called a "natural sort". For Microsoft SQL Server 2005, see this question. For other languages, see (for example) this other question.
If we can assume that the data values only contain the letter d and a numeric value, then you can also use:
select column from YourTable
order by convert(int, replace(column, 'd', ''))
If it contains any other letters, then this method rapidly becomes unusable:
select column from YourTable
order by convert(int,
replace(replace(replace(replace(replace(
column, 'a', ''),
'b', ''),
'c', ''),
'd', ''),
'e', '')
)