SQL Server
 Computer >> コンピューター >  >> プログラミング >> SQL Server

SQLServerのTRY_CONVERT関数

この記事では、SQL ServerでTRY_CONVERTデータ型変換関数を使用して、関数をより適切に視覚化およびキャプチャするための特定の構文と例を使用する方法について詳しく説明します。

説明

TRY_CONVERT関数 SQL Serverでは、式を任意のデータ型に変換できますが、特定の形式に従うことができます(特に日付データ型の場合)。変換が失敗した場合、TRY_CONVERTはNULLを返します。それ以外の場合は、対応する変換値を返します。

構文

SQL ServerでTRY_CONVERT関数を使用するには、次の構文を使用します。

 TRY_CONVERT(kieudulieu(do_dai), bieuthuc, dinh_dang) 

パラメータ

  1. kieudulieu: 式が変換される新しいデータ型の名前。おそらく次のいずれかです: bigint、int、smallint、tinyint、bit、decimal、numeric、money、smallmoney、float、real、datetime、smalldatetime、char、varchar、text、nchar、nvarchar、ntext、binary、varbinary または画像。
  2. do_dai (オプション): char、varchar、nchar、nvarchar、binary、varbinaryの結果のデータ型の長さ。
  3. bieuthuc: 別のデータ型に変換する値。テーブル内の列の名前、または新しいデータ型に変換する必要のある計算式にすることもできます。
  4. dinh_dang (オプション):データを日付形式から文字列形式に変換するための形式を指定する数値です。次の表は、TRY_CONVERT関数で使用されるいくつかの一般的な形式を示しています。
年形式
(yy) 年形式
(yyyy) データを表示 0100 mon dd yyyy hh:miAM / PM(デフォルト)1101 mm / dd / yyyy(米国標準)2102 yy.mm.dd(ANSI標準)3103 dd / mm / yy(英国/フランス標準4104 dd .mm.yy(ドイツ標準)5105 dd-mm-yy(イタリア標準)6106 dd mon yy 7107 Mon dd、yy 8108 hh:mi:ss 9109 mon dd yyyy hh:mi:ss:mmmAM / PM 10110 mm-ddyy(米国標準)11111 yy / mm / dd(日本標準)12112 yymmdd(ISO標準)13113 dd mon yyyy hh:mi:ss:mmm(ヨーロッパ標準-24時間クロック)14114 hh:mi:ss:mmm(24時間クロック)20120 yyyy-mm-dd hh:mi:ss(ODBC正規-24時間クロック)21121 yyyy-mm-dd hh:mi:ss:mmm(ODBC正規- 24時間クロック)126 yyyy-mm-ddThh:mi:ss:mmm(ISO8601標準)127 yyyy-mm-ddThh:mi:ss:mmmZ(ISO8601標準)130 dd y yyyy hh:mi:ss:mmmAM / PM( Hijri標準)131 dd / mm / yy hh:mi:ss:mmmAM / PM(Hijri標準)

  1. floatまたは数値データ型をint整数に変換する場合、TRY_CONVERTは小数部分をカットします。
  2. CASTおよびCONVERT、TRY_CAST関数も参照してください。
  3. TRY_CONVERTは、SQL Serverの新しいバージョン(SQL Server 2017、SQL Server 2016、SQL Server 2014、SQL Server 2012)で使用できます。

SQLServerのTRY_CONVERT関数の例をいくつか見てみましょう。

 SELECT TRY_CONVERT(int, 14.85); 
Result: 14
(kết quả là một giá trị int bị cắt phần thập phân)


SELECT TRY_CONVERT(float, 14.85);
Result: 14.85
(kết quả được trả về dưới dạng giá trị float và không bị cắt ngắn)


SELECT TRY_CONVERT(float, '14 Main St.');
Result: NULL
(kết quả là NULL vì không thể chuyển đổi giá trị chuỗi này thành float)


SELECT TRY_CONVERT(varchar, 15.6);
Result: '15.6'
(kết quả được trả về dưới dạng varchar)


SELECT TRY_CONVERT(varchar(2), 15.6);
Result: NULL
(kết quả là NULL vì chuyển đổi không thành công do giá trị không phù hợp với
varchar độ dài 2 ký tự)


SELECT TRY_CONVERT(datetime, '2018-09-13');
Result: '2018-09-13 00:00:00.000'
(kết quả được trả về dưới dạng datetime)


SELECT TRY_CONVERT(varchar, '2018-09-13', 101);
Result: '09/13/2018'
(kết quả được trả về dưới dạng varchar với kiểu 101 - mm/dd/yyyy (tiêu chuẩn Hoa Kỳ))

  1. SQLServerのAVG関数

    この記事では、SQL ServerでAVG()数値処理関数を使用する方法と、関数をより適切に視覚化およびキャプチャするための特定の構文と例を詳しく説明します。 説明 AVG関数 SQL Serverでは、選択した行の指定された列に従って、式の平均値または平均値を返します。 NULLが省略された値はカウントされません。 構文 平均値を計算するには、SQLServer構文で次のようにAVG関数を使用します。 SELECT AVG(cot) FROM bang [WHERE dieukien]; パラメータ : コット: 列または計算値、平均化する式 状態: レコードの取得に使用される

  2. SQLServerのCOUNT関数

    この記事では、SQL ServerでCOUNT()番号を処理する関数を特定の構文と例で使用して、関数をより適切に視覚化およびキャプチャする方法について詳しく説明します。 説明 COUNT関数 SQL Serverでは、データテーブルに含まれるレコード(データ、行)の数をカウントするために使用されます。 NULLが省略された値はカウントされません。 構文 SQL ServerでCOUNT関数を使用するには、次の構文を使用します。 SELECT COUNT(cot) FROM bang [WHERE dieukien]; パラメータ : コット: 列または計算値、カウントする式 状