1. 程式人生 > >mysql 查詢varchar型別欄位排序

mysql 查詢varchar型別欄位排序

首先,如果裡面存的是字母,會按英文字母順序排序,如果含有數字,按數字大小排序,如果含有漢字,按照所選擇的漢字編碼排序。

一般情況下,int型別的欄位可以直接使用max()函式查詢出某一列的最大值,但是對於varchar型的欄位,我們有的時候需要排序或查最大值,直接用max()函式查最大值,會發現值為9的比值10大一些,解決方案如下:

1.SELECT MAX(field+0) FROM tablename

2.同樣情況,使用cast()函式

SELECT MAX(cast(field as decimal)) FROM tablename

排序:SELECT field FROM tablename order by field+0

desc

中文排序想要按拼音排序:先把資料庫的字符集設定為UTF8,再
SELECT field FROM tablename order by convert(field using gbk)