MSSQL類型轉換函數-強制類型轉換(STR、CONVERT、CAST、PARSE)

2020-12-14 性感的小土豆

轉換函數將值從一種數據類型轉換為另一種。在資料庫中很多時候需要把一個類型的數據轉換成另一個數據類型來進行運算或者輸出顯示,這種轉換有的時候可以隱士的轉換有的時候就需要強制類型轉換。在保證數據正確的情況下進行強制類型轉換。

數據類型轉換可以通過CAST()和CONVERT()函數來實現。大多數情況下,這兩個函數是重疊的,它們反映了SQL語言的演化歷史。這兩個函數的功能相似,不過它們的語法不同。雖然並非所有類型的值都能轉變為其他數據類型,但總的來說,任何可以轉換的值都可以用簡單的函數實現轉換。

CAST()和CONVERT()函數在轉換過程中除了語法不一樣以外幾乎都一樣,基本語法:CAST語法:【SELECT CAST(變量或者列名 AS 要轉換的數據類型)】。CONVERT語法:【SELECT CONVERT(要轉換的數據類型,變量或者列名) 】。兩個一個用as分割一個用逗號分隔轉換結果沒有什麼不同。

注意的是CAST()函數和CONVERT()函數都不能執行四捨五入或截斷操作。由於3.14不能用int數據類型來表示,所以在把小數轉換整數的時候會出現錯誤。

STR()函數這是一個將數字轉換為字符串的快捷函數。這個函數有3個參數:數值、總長度和小數位數。如果數字的整數位數和小數位數(要加上小數點佔用的一個字符)的總和小於總長度,對結果中左邊的字符將用空格填充。在下面的例子中左邊用空格填充右邊用0填充。

PARSE()函數返回 SQL Server 中轉換為所請求的數據類型的表達式的結果。基本語法是:PARSE ( string_value AS data_type [ USING culture ] ) string_value為nvarchar(4000) 值,表示要解析為指定數據類型的格式化值。string_value 必須為所請求的數據類型的表示形式,否則 PARSE 將引發錯誤。

data_type表示結果的所請求數據類型的文本值。culture可選字符串,它標識對string_value 進行格式化的區域性。如果未提供 culture 參數,則使用當前會話的語言。 可以使用 SET LANGUAGE 語句隱式或顯式設置此語言。culture 接受 .NET Framework 支持的任何區域性;它不局限於 SQL Server 顯示支持的語言。 如果 culture 參數無效,PARSE 將引發錯誤。返迴轉換為所請求的數據類型的表達式的結果。

相關焦點

  • MsSql中返回平均值函數AVG函數
    在實際需求中往往需要計算一下一組數字的平均值比如學生成績,報銷匯總平均值,mssql系統提供了函數avg來直接返回平均值,語法很簡單【select avg(列名) from 表名】其中列名不能為varchar等也就是不能是字符型數據類型。
  • 標準C+的類型轉換符:static_cast等
    一、 強制轉型 1) C 風格(C-style)強制轉型: (T) exdivssion // cast exdivssion to be of type T 2) 函數風格(Function-style)強制轉型使用這樣的語法
  • 誰說C++ 的強制類型轉換很難懂?
    作者 | 櫻雨樓責編 | 屠敏在上篇與中篇中,我們討論了隱式類型轉換及其與函數重載之間的相關話題。本篇將要討論的即為類型轉換的另一大分支——強制類型轉換。C風格的強制類型轉換在C語言中,強制類型轉換存在兩種等價形式:Type(Value)或(Type)Value。
  • c++之內存分配、命名空間、強制類型轉換學習總結
    強制類型轉換類型匯總static_castconst_castdynamic_castreinterpret_cast用法:xxx_cast(Expression)下面是每種強制類型的具體講解:1、static_cast強制類型轉換:代碼解析:#include <stdio.h>void static_cast_demo
  • JavaScript數據類型轉換
    雖然變量的數據類型是不確定的,但是各種運算符對數據類型是有要求的。如果運算符發現,運算子的類型與預期不符,就會自動轉換類型。本文主要介紹數據類型強制轉換和自動轉換,自動轉換是基於強制轉換之上。強制轉換主要指使用Number、String和Boolean三個函數,手動將各種類型的值,分布轉換成數字、字符串或者布爾值。
  • 4 種 C++ 強制類型轉換,你都清楚嗎?
    (給CPP開發者加星標,提升C/C++技能)我們先來回憶以下,C 語言的強制類型轉換形式:這種舊式強制類型轉換從表現形式上來說不夠清晰明了
  • 詳解C++ 的隱式類型轉換與函數重載!
    作者 | 櫻雨樓責編 | 屠敏在上篇中,我們討論了C++中與隱式類型轉換相關的一些話題,而函數重載是與隱式類型轉換相關的又一大重要話題,本篇將要討論的內容即為隱式類型轉換與函數重載之間的相關話題。存在多個可行的用戶定義的類型轉換,但不存在精確匹配的類型轉換參考以下代碼:structA {operatorint(){ return0; } operatordouble(){ return0.; } };intmain(){static_cast
  • java類型轉換String互轉int,double, float, BigDecimal
    轉換規則:從低位類型到高位類型自動轉換;從高位類型到低位類型需要強制類型轉換類似於 int i=1; double s=i+1; 這種低位類型轉換的這裡就不在做說明>String 轉 int ,double, float, BigDecimalString轉intString str = "123";
  • 每日一課 | 如何在Python 3中轉換數據類型
    本本文主要講述轉換數字,字符串,元組和列表,並提供示例以幫助各位熟悉不同的用例。轉換數字類型在Python中,有兩種數字數據類型:整數和浮點數或浮點數。將整數轉換為浮點數 Python的方法float()會將整數轉換為浮點數。要使用此功能,請在括號內添加一個整數: 您也可以將其與變量一起使用。
  • 2.5 JavaScript數據類型的轉換
    JavaScript數據類型轉換包括隱式類型轉換和顯式類型轉換兩種。2.5.1 隱式類型轉換程序運行時,系統根據當前上下文的需要,自動將數據從一種類型轉換為另一種類型的過程稱為隱式類型轉換。可以向這兩種方法中傳入任何類型的數據,這些數據最終都被自動轉換為字符串型。當然這種自動轉換的結果,有時並不符合程式設計師的真實需要。
  • python二級考試大綱考試內容:類型判斷和類型間轉換
    類型判斷 type()函數type()函數,可以獲取數據類型。如圖,所有python代碼字母都區分大小寫,Type 和type是不同的。二百五 和 「二百五」,也是不同的。 還有中文符號和英文符號也不同。250 是 int 類型,整數類型。'二百五' 是 str 類型,字符串類型。
  • 上新了Spring,全新一代類型轉換機制
    搞定收工,PropertyEditor就到這❞新一代類型轉換為了解決PropertyEditor作為類型轉換方式的設計缺陷,Spring 3.0版本重新設計了一套類型轉換接口,有3個核心接口:Converter<S, T>:Source -> Target類型轉換接口,適用於1:1轉換ConverterFactory
  • 一篇文章搞定JavaScript類型轉換
    它是 JavaScript 語言的第七種數據類型由於這是一篇講解JavaScript類型轉換的文章,這兒就先不對各種數據類型做具體講解了(以後再專門寫一篇)。null 和 undefined 在轉換為對象時會拋出異常三、顯式類型轉換儘管JavaScript做了很多的自動轉換,但很多時候我們還是需要做顯式類型轉換,有時也是為了提高代碼可讀性3.1 最簡單轉換:類型轉換函數使用 Boolen()、 Number() 、 String() 、 Object()不通過new運算符調用時,作為類型轉換函數做類型轉換
  • 釐清C++類型轉換
    筆者之前寫的Python與Go都是強類型的語言,對這種弱類型的設計實在是接受無力啊 ( 生活所迫,工作還得寫C++啊)C++語言提供了四種類型轉換的操作:static_cast,dynamic_cast,reinterpret_cast,const_cast,今天就來聊一聊,在C++之中應該如何來使用這些類型轉換的。
  • python的內置函數:int()轉換成整型
    前言在Java中有強制類型轉換,我們可以利用Integer.parseInt()將一個對象轉換成int類型。在python中是利用內置函數int()來將一個對象轉換成整型。python的內置函數int的使用1.內置函數int()語法classint(x,base=10),其中x為一個字符串或數字,base來表示x是以什麼進位的數據來表示的。
  • Python數據清洗--類型轉換和冗餘數據刪除
    這是第一篇文章,主要分享的內容包括,文中涉及到的數據可以至文末查看下載連結:數據類型的轉換冗餘數據的識別和處理數據類型的判斷和轉換如下表所示,為某公司用戶的個人信息和交易數據,涉及的欄位為用戶id、性別、年齡、受教育水平、交易金額和交易日期。
  • pandas100個騷操作:變量類型自動轉換
    清洗初期查看dtypes經常出現object類型,但其實變量本身可能就是個字符串,或者是數字(但因存在空值,導致出現了object類型)。通常大家所熟知的方法是使用astype進行類型轉換,或者自己利用astype造個輪子,寫個函數方法實現自動轉換類型。
  • Python3.7知其然知其所以然-第七章 類型轉換
    使用python處理數據時,不可避免的要進行數據類型之間的轉換,諸如整型和字符串之間的轉換。轉換有隱式和顯式轉換,隱式也稱自動轉換,不用做特殊。顯示轉換,也稱為數據類型的強制類型轉換,通過內置函數實現。
  • C++的轉換手段並與explicit關鍵詞配合使用
    ,讓一些問題難以察覺.所以C++提供了一組可以用在不同場合的強制轉換的函數.C++提供了四種強制類型轉化的函數,分別是:static_cast,命名上理解是靜態類型轉換。大部分C實現的轉化,用這個函數就可以了。
  • java基礎案例之java語言組成和數據類型與強制類型轉換語法
    6:語句 7:函數 8:數組。java數據類型定義變量格式:數據類型 變量名 =初始化值;例如:int x =4;java擁有不同類型運算時,會自動提升上一級類型。如:byte b=3;b=b+2; //前者b是byte類型,後者2是int類型。