Sql Server函數全解<三>資料類型轉換函式和文本映像函數

來源:互聯網
上載者:User

標籤:

原文:Sql Server函數全解<三>資料類型轉換函式和文本映像函數

一:資料類型轉換函式

  在同時處理不同資料類型的值時,SQL Server一般會自動進行隱士類型轉換。對於資料類型相近的值是有效,比如int和float,但是對於其它資料類型,例如整型和字元類型,隱士轉換就無法實現了,此時必須使用顯示轉換。為了實現這種顯示轉換,T-SQL提供了兩個顯示轉換函式,分別是CAST和CONVERT函數。
 CAST(x AS type)和CONVERT(type,x)函數將一個類型的值轉換為另一個類型的值。
eg: select CAST(‘121231‘ AS DATE),CAST(100 AS CHAR(3)),CONVERT(TIME,‘2012-05-01 12:11:10‘)
 可以看到,CAST(‘121231‘ AS DATE)將字串值轉換為了相應的日期值;CAST(100 AS CHAR(3))將整數100轉換為帶有3個顯示寬度的字串類型,結果為字串"100";CONVERT(TIME,‘2012-05-01 12:11:10‘)將datetime類型的值,轉換為time類型值,結果為"12:11:10.0000000"。

 

二:文本和映像函數

文本和映像函數用於對文本或映像輸入值或欄位進行操作,並提供有關該值的基本資料。T-SQL中常用的文本含函數有兩個,即TEXTPTR函數和TEXTVALID函數。
1.TEXTPTR函數

TEXTPTR(column)函數用於返回varbinary格式的text、ntext或者image欄位的文本指標值。尋找到的文本指標值可應用於readtext,writetext和updatetext語句。其中參數column是一個資料類型為text、ntext或者image的欄位列。
【例】查詢authors表中name欄位十六位元組文本指標;
 首先建立表authors, name欄位為text類型,T-SQL代碼如下:
 create table authors(id int ,name text);
 insert into authors values(1,‘this is a text‘);
使用TEXTPTR查詢authors表中name欄位的十六位元組文本指標
 select id, TEXTPTR(name)from authors where id=1

2. TEXTVALID函數

  TEXTVALID(‘table.column‘,text_ptr)函數用於檢查特定文本指標是否為有效text、ntext或image函數。table.column為指定資料表和欄位,text_ptr為要檢查的文本指標。
【例】檢查是否存在用於authors表中decription欄位中的各個值的有效文本指標。
  select id,‘this is a text‘ = TEXTVALID((‘authors.name‘),TEXTPTR(name)) from authors;
 第一個1為id的值,第二個1表示查詢的值存在.

   

Sql Server函數全解<三>資料類型轉換函式和文本映像函數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.