ホームページ >運用・保守 >Linuxの運用と保守 >Oracle の文字を数字に変換する方法

Oracle の文字を数字に変換する方法

PHPz
PHPzオリジナル
2023-04-17 09:49:295311ブラウズ

Oracle は、データの処理によく使用される人気のリレーショナル データベース管理システムです。 Oracle を使用するプロセスでは、文字と数字は必須の種類です。場合によっては、計算や分析のために文字を数値に変換する必要があり、Oracle が提供するいくつかの関数を使用する必要があります。

  1. TO_NUMBER 関数

Oracle では、TO_NUMBER 関数を使用して文字型を数値型に変換できます。構文は次のとおりです。

TO_NUMBER(文字列, [形式], [言語設定])

このうち、文字列は変換する必要がある文字型データであり、形式ははオプションです。文字列の解析形式を指定します。言語設定もオプションであり、国際化設定を指定するために使用されます。

たとえば、文字列「123.456」があるとします。これは、計算のために数値データに変換する必要があります。これは、次のステートメントを使用して実現できます。

SELECT TO_NUMBER('123.456') FROM Dual

実行結果は、123.456 です。

  1. CAST 関数

Oracle では、CHARTO_NUMBER 関数を使用して文字データを数値データに変換できます。ただし、クエリ内でデータを数値型に明示的に変換する場合は、CAST 関数を使用できます。

CAST 関数の構文は次のとおりです。

CAST (数値 AS NUMBER に変換する必要がある文字データ)

たとえば、文字列があります。変換が必要な「789.012」 数値データに変換して計算します。これは、次のステートメントを使用して実現できます。

SELECT CAST('789.012' AS NUMBER) FROM Dual

実行結果は、789.012 です。

  1. DECODE 関数を使用して変換する

DECODE 関数は、Oracle データベースの変換関数の 1 つで、条件に基づいて 1 つの値を別の値に変換できます。使用する場合は、変換する値、それに対応する変換値、およびデフォルトの変換値を指定する必要があります。

DECODE 関数の構文は次のとおりです。

DECODE (変換対象の値、値がターゲット値 1 と等しい場合は値 1 が返され、値がターゲット値と等しい場合は値 1 が返されます)ターゲット値 2 と等しい場合、値 2 が返されます、...、デフォルトの戻り値)

たとえば、文字列 '100' を整数型に変換する必要があります。これは、次のステートメントを使用して実現できます:

SELECT DECODE('100', NULL, 0, '100', 1, -1) FROM Dual

実行結果は次のとおりです。

概要:

Oracle では、TO_NUMBER、CAST、および DECODE 関数を使用して文字データを数値データに変換できます。このうち、TO_NUMBER 関数は文字列型のデータを数値に変換するのに適しており、CAST 関数は文字データを明示的に数値データに変換でき、DECODE 関数は条件に基づいてある値を別の値に変換できます。使用する場合は、状況に応じて選択して使用する必要があります。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。