1.將字符的數字轉成數字,比如'0'轉成0可以直接用加法來實現
例如:將pony表中的d 進行排序,可d的定義為varchar,可以這樣解決
select * from pony order by (d+0)
2.在進行ifnull處理時,比如 ifnull(a/b,'0') 這樣就會導致 a/b成了字符串,因此需要把'0'改成0,即可解決此困擾
3.比較數字和varchar時,比如a=11,b="11ddddd";
則 select 11="11ddddd"相等
若絕對比較可以這樣:
select binary 11 =binary "11ddddd"
4.字符集轉換 : CONVERT(xxx USING gb2312)
類型轉換和SQL Server一樣,就是類型參數有點點不同 : CAST(xxx AS 類型) , CONVERT(xxx,類型),類型必須用下列的類型:
可用的類型
二進制,同帶binary前綴的效果 : BINARY
字符型,可帶參數 : CHAR()
日期 : DATE
時間: TIME
日期時間型 : DATETIME
浮點數 : DECIMAL
整數 : SIGNED
無符號整數 : UNSIGNED