$MVOCONV
Synopsis
$MVOCONV(expression,code)
引数
expression | 列名、文字リテラル、または他の関数の結果となる文字列式。基本となるデータ型は、任意の文字タイプ (CHAR や VARCHAR2 など) とすることができます。 |
code | 文字コード。実行する変換タイプを指定する、引用符付きの文字列として指定されます。内部形式から外部形式への変換が行われます。 |
説明
$MVOCONV 関数は、文字列の内部 (ストレージ) 形式から外部 (出力) 形式への変換に使用される MultiValue 変換関数です。変換タイプは、変換対象のデータ型に固有の code 文字列で指定されます。
$MVOCONV は、Caché SQL 拡張機能であり、MultiValue データの互換性を保持するために使用されます。機能的には、"Caché MVBasic Reference" で説明されている MultiValue OCONV 関数と同じです。詳細は、OCONV を参照してください。
以下の変換タイプがサポートされています。
-
文字変換 : 文字からコード、コードから文字への変換
-
数値変換 : 10 進数から 16 進数、16 進数から 10 進数、マスク付き 10 進数の変換、範囲抽出
-
文字列変換 : 大文字と小文字変換、Soundex 変換、文字列長変換、均一文字列長調整、区切られた部分文字列の抽出、パターン・マッチ抽出、長さによる文字列抽出
-
時刻および日付変換 : 時刻の内部形式から表示形式、日付の内部形式から表示形式、日付の表示形式から内部形式、日付要素抽出、日付の曜日、年間通算日、および四半期の計算
$MVOCONV 関数は、内部形式から外部形式への変換を行います。$MVICONV 関数は、外部形式から内部形式への変換を行います。$MVOCONVS 関数を使用して、動的配列の要素を内部形式から外部形式に変換できます。
例
以下の例は、さまざまな code 値を使用して MultiValue 日付を内部形式から外部形式に変換します。MultiValue 内部日付の 0 は 1967 年 12 月 31 日です。これは、Caché 内部 ($HOROLOG) 日付の 46385 に対応することに注意してください。
NEW SQLCODE
SET indate=15000
&sql(SELECT
$MVOCONV(:indate,'D'),
$MVOCONV(:indate,'D2'),
$MVOCONV(:indate,'D/'),
$MVOCONV(:indate,'D2-')
INTO :a,:b,:c,:d)
IF SQLCODE=0 {
WRITE a," = ",$ZDATE((indate+46385),1,,4),!
WRITE b," = ",$ZDATE((indate+46385),1,,4),!
WRITE c," = ",$ZDATE((indate+46385),1,,4),!
WRITE d," = ",$ZDATE((indate+46385),1,,4) }
ELSE { WRITE "error:",SQLCODE }