1.問題描述
在項目中遇到要將Int類型轉為Char類型,然后利用轉化后的Char類型進行模糊查詢。
例:合同編號在數據庫中為int類型 8066
用利用 806 模糊查詢出合同編號為8066數據記錄
2. 解決方案
利用MySQL中兩個函數其中之一,將合同編號轉為Char類型,然后利用模糊查詢查出記錄:
CAST(expr AS type)
CONVERT(expr,type)
3. 例:
CAST
select * from t_order_delivery_noticedetails where CAST(htbh as char(10)) like '%806%'
CONVERT
select * from t_order_delivery_noticedetails where CONVERT(htbh,char(10)) like '%806%'
利用上訴轉化可以實現需求,同時這兩個函數支持其他類型的轉化。
參考資料
1. https://dev.mysql.com/doc/refman/5.7/en/cast-functions.html#function_cast
2. http://stackoverflow.com/questions/15368753/cast-int-to-varchar