sql型別轉換函式cast和convert

2021-05-08 21:44:43 字數 2027 閱讀 8224

簡介:

資料型別轉換可以通過

cast()

和convert()

函式來實現。大多數情況下,這兩個函式是重疊的,它們反映了

sql語言的演化歷史。這兩個函式的功能相似,不過它們的語法不同。雖然並非

所有型別的值都能轉變為其他資料型別,但總的來說,任何可以轉換的值都可以用簡單的函式實現轉換。

語法:

cast ( expression as data_type ) 

convert (data_type[(length)], expression [, style])

用例:

a.

檢索書名當前銷售額的第一位數字為

3,通過將

ytd_sales

轉換為char(20)

實現。

use   pubs  

go  

select   substring(title,   1,   30)   as   title,   ytd_sales  

from   titles  

where   cast(ytd_sales   as   char(20))   like   '3%'   go

use   pubs  

go  

select   substring(title,   1,   30)   as   title,   ytd_sales  

from   titles  

where   convert(char(20),   ytd_sales)   like   '3%'   go

b.  

使用帶有算術運算子的

cast

use   pubs  

go  

select   cast(round(ytd_sales/price,   0)   as   int)   as   'copies'  

from   titles  

go  

c.  

使用cast

進行串聯

use   pubs  

go  

select   'the   price   is   '   +   cast(price   as   varchar(12))  

from   titles  

where   price   >   10.00  

go  

d.使用

cast

獲得更多易讀文字

use   pubs  

go  

select   cast(title   as   char(50)),   ytd_sales  

from   titles  

where   type   =   'trad_cook'  

go e.

使用帶有

like

子句的cast

use   pubs  

go  

select   title,   ytd_sales  

from   titles  

where   cast(ytd_sales   as   char(20))   like   '15%'  

and   type   =   'trad_cook'  

go  

當從乙個

sql server 

物件的資料型別向另乙個轉換時,一些隱性和顯式資料型別轉換是不支援的。例如,

nchar 

數值根本就不能被轉換成

image 

數值。nchar 

只能顯式地轉換成

binary

,隱性地轉換到

binary 

是不支援的。

nchar 

可以顯式地或者隱性地轉換成

nvarchar。

SQL轉換函式CAST 和 CONVERT

cast 語法 cast expression as data type length convert 語法 convert data type length expression style expression 任何有效的表示式 data type 目標資料型別。這包括 xml bigint 和...

C 型別轉換 Cast

1 reinpreter cast 此識別符號的意思即為資料的二進位制形式重新解釋,但是不改變其值。這個操作符能夠在非相關的型別之間轉換。操作結果只是簡單的從乙個指標到別的指標的值的二進位制拷貝。在型別之間指向的內容不做任何型別的檢查和轉換。用法 reinpreter cast expression...

c 各個cast強制型別轉換函式總結

c 11增加了幾個static cast等強制型別轉換函式,在強制型別轉換時盡量使用,這裡總結一下。寫程式時應該盡量避免強制型別轉換,如果實在需要強制型別轉換時,最好使用下面介紹的四種顯式轉換符。主要的顯式強制型別轉換包括static cast,dynamic cast,const cast,rei...