Sql Server query varchar data sort like int
问题 I have one table like CREATE TABLE table_name ( P_Id int, amount varchar(50) ) Data Like Id amount ---------- 1 2340 2 4568 3 10000 Now I want to sort table by amount but one problem is amount is varchar so it sort table like this Id amount ---------- 3 10000 1 2340 2 4568 but i want result like this Id amount ---------- 3 10000 2 4568 1 2340 what should i do ? 回答1: Cast amount column into Numeric in ORDER BY clause while selecting: SELECT * FROM MyTable ORDER BY CAST(amount AS Numeric(10,0))