ホームページ > データベース > Oracle > Oracleは文字列に変換します

Oracleは文字列に変換します

WBOY
リリース: 2023-05-08 10:25:37
オリジナル
7314 人が閲覧しました

Oracle データベースでは、出力または文字列の結合操作を容易にするために、数値または日付データを文字列型に変換する必要がある場合があります。この記事では、Oracle データベースで数値、日付、およびブール値のデータを文字列型に変換する方法を紹介します。

1. 数値型を文字列型に変換する

  1. TO_CHAR 関数

Oracle データベースで最も一般的に使用される方法は、数値型を文字列型に変換することです。関数の型は TO_CHAR 関数で、その構文は次のとおりです:

TO_CHAR(number, [format], [nls_ language])

このうち、number は数値型を表します。変換対象、format は書式設定を表します。テンプレートは、プリセット形式またはカスタム形式です。nls_ language は、データのロケールを表します。このパラメータが省略された場合は、現在のセッションのデフォルト値が使用されます。一般的に使用される書式設定テンプレートの一部を次に示します。

テンプレートの説明
FM 先頭のスペースを削除します
0 欠落している数字を 0 で埋めます
09 欠落している数字を 0 で埋め、2 桁の位置合わせ
9999 足りない桁はスペースで埋められ、4 桁に揃えられます
$9,999 署名付き金額、3 桁ごとにグループ化されます
Dollar9,999.99 署名付き金額、桁区切り文字および小数点以下 2 桁

例:数値 12345.67 は文字列型に変換され、形式は通貨形式で、米国英語の言語環境が使用されます。次のコードを使用できます:

SELECT TO_CHAR(12345.67, '$9,999.99', 'NLS_LANGUAGE=) AMERICAN')
FROM Dual;

出力結果は $12,345.67 です。

  1. CAST 関数

TO_CHAR 関数に加えて、Oracle では数値型を文字列型に変換するための CAST 関数も提供しています。構文は次のとおりです。

CAST(expression AS data_type)

このうち、expression は変換対象の数値型を表し、data_type は変換対象のデータ型を表します。ここでは、数値型を CHAR または VARCHAR2 型に変換できます。たとえば、数値 12345.67 を文字列型に変換するには、次のコードを使用できます。

SELECT CAST(12345.67 AS VARCHAR2(10))

FROM Dual;

出力結果は 12345.67 です。

2. 日付型を文字列型に変換する

    TO_CHAR 関数
Oracle データベースでは、日付型データを文字列型に変換します。 TO_CHAR 関数を使用できます。その構文は次のとおりです。

TO_CHAR(date, [format], [nls_lang])

このうち、date は変換する日付データを表し、format は変換する日付データを表します。はフォーマットされたテンプレートを表し、nls_ language はデータのロケールを表します。一般的に使用される書式設定テンプレートの一部を次に示します。

テンプレートの説明

YYYY-MM-DD 日付の年、月、日
YYYY-MM-DD HH24:MI:SS 年、日付、日、時、分、秒の月
MONTH 月の完全な名前 (1 月など)
MON 月の省略形 (1 月など)
DD-MON-YYYY日付の日、月、年 (例: 31-JAN-2022)

たとえば、日付型データ '2022-01-31' を文字列型に変換するには、次のコードを使用できます。

##SELECT TO_CHAR('2022-01-31' , 'YYYY-MM-DD')

FROM Dual;


出力結果は 2022-01-31 です。

CAST 関数
  1. TO_CHAR 関数に加えて、Oracle では、日付型データを文字列型に変換するための CAST 関数も提供しています。構文は次のとおりです。
#CAST(expression AS data_type)

このうち、expression は変換対象の日付データ、data_type は変換対象のデータ型を表します。ここでは、日付型データを CHAR 型または VARCHAR2 型に変換できます。たとえば、日付型データ '2022-01-31' を文字列型に変換するには、次のコードを使用できます:

SELECT CAST('2022-01-31' AS VARCHAR2(10))

FROM デュアル;

出力結果は 2022-01-31 です。

3. Boolean 型から string 型への変換

Oracle データベースでは、Boolean 型のデータをそのまま String 型に変換することはできませんが、CASE 式を利用することで Boolean 型のデータを変換することができます。以下は、ブール データを文字列型に変換するサンプル コードです:

SELECT

CASE WHEN flag = 'true' THEN 'Yes'
     WHEN flag = 'false' THEN 'No'
END AS result
ログイン後にコピー
FROM my_table;

ここで、フラグはブール データ、'true' および 'false' です。は文字列型であり、結果は変換された文字列型です。フラグが「true」の場合は「Yes」を返し、フラグが「false」の場合は「No」を返します。

要約すると、この記事では、Oracle データベースで数値、日付、およびブール値データを文字列型に変換する方法を紹介します。数値データと日付データの場合は、TO_CHAR 関数または CAST 関数を使用して変換を行うことができ、ブール データの場合は CASE 式を使用して変換を行うことができます。

以上がOracleは文字列に変換しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート