Snabbast, enklast? använd * 1
select *
from tbl
order by number_as_char * 1
De andra anledningarna till att använda * 1
är att det kan
- överleva några fruktansvärda missöden med underflöde (minskad decimalprecision när du väljer vad du ska kasta till)
- fungerar (och ignorerar) kolumner med rent icke-numeriska data
- tar bort numeriska delar av alfanumeriska data, som 123A, 124A, 125A