1. 程式人生 > >mysql 將 字元 轉換成 數字

mysql 將 字元 轉換成 數字

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

舉例如下:

SELECT CAST('01' AS SIGNED);
SELECT CONVERT('01',SIGNED); SELECT '01'+0;