今天寫sql語句時,相對字串型別的數字進行排序,怎麼做呢?
需要先轉換成數字再進行排序
1.直接用加法
字串+0
eg:select * from orders order by (mark+0) desc
eg:以分類字段進行分組,獲取分類總數amount,和qty(數量),最後以amount進行有大到小的倒序排列
select category_code,sum(transaction_number) as qty ,format(sum(number*price),2)+0 as amount from sell where date='2017-03-06' group by category_code order by amount desc;
2.使用函式
cast(value as type);
convert(value, type);
注:這裡的type可以為:
浮點數 : decimal
整數 : signed
無符號整數 : unsigned
eg:select * from orders order by convert(mark,signed) desc
select * from orders order by cast(mark as signed) desc
mysql將字串轉成數字
今天寫sql語句時,相對字串型別的數字進行排序,怎麼做呢?需要先轉換成數字再進行排序 1.直接用加法 字串 0 eg select from orders order by mark 0 desc 2.使用函式 cast value as type convert value,type 注 這裡的t...
mysql學習,字串轉成數字並比較排序
substring index 列名 分割符 段數 列名 要分割列裡內容的列名 分割符 用來切割的符號 段數 切割後取的長度 以下示例說明引數 表info 列c code 值1 10 ache 則select substring index c code,1 as c code from info ...
mysql學習,字串轉成數字並比較排序
mysql學習,字串轉成數字並比較排序 substring index 列名 分割符 段數 列名 要分割列裡內容的列名 分割符 用來切割的符號 段數 切割後取的長度 以下示例說明引數 表info 列c code 值1 10 ache 則select substring index c code,1 ...