sql查詢結果數據類型轉換問題
工作中遇到查詢結果需要拼接,但是需要拼接的兩個字段的類型不同,一個字段varchar類型,一個int類型
這時運行sql會報類型轉換的錯誤。
select table.a+' '+table.b from table
a為int類型,b為varchar類型
這是因為其中一個字段為int數值類型,用加號拼接會自動進行數學運算。
這時需要將int類型轉換成varchar類型進行拼接
sqlserver提供數據類型轉換函數:CONVERT() 函數
語法如下CONVERT(data_type(length),data_to_be_converted,style)
解析:
data_type(length) 需要轉換成的數據類型和長度,
data_to_be_converted 需要轉換的數據
style 規定日期/時間的輸出格式。可省略
這時,通過函數轉換一下sql如下
select CONCERT(VARCHAR(10),table.a)+' '+ table.b from table
問題解決。