HINPUT - 文字列を日付時間値に変換
HINPUT 関数は、文字列を日付時間値に変換します。
文字列を日付時間値に変換
HINPUT(source_length, 'source_string', output_length, output)
source_length
整数
変換するソース文字列のバイト数です。実際の値、値を含む文字フィールド名、値を返す式のいずれかを指定します。
source_string
文字
変換する文字列です。文字列は一重引用符 (') で囲みます。文字列を含む文字フィールド名、または文字列を返す式を指定することもできます。この文字列には、入力値として有効な任意の日付時間の組み合わせを使用することができます。
output_length
整数
返された日付時間値の長さです。有効な値には、次のものがあります。
- 8 - 1 桁から 3 桁 (ミリ秒) を含む時間値です。
- 10 - 4 桁から 6 桁 (マイクロ秒) を含む時間値です。
- 12 - 7 桁から 9 桁 (ナノ秒) を含む時間値です。
output
日付時間
返される日付時間値です。結果を格納するフィールド名、または出力フォーマットです。フォーマットは一重引用符 (') で囲みます。フォーマットは、日付時間フォーマット (データタイプ H) である必要があります。
文字列を日付時間値に変換
HCNVRT 関数は、TRANSDATE フィールドを文字フォーマットに変換します。その後、HINPUT 関数が文字列を日付時間値に変換します。
TABLE FILE VIDEOTR2 PRINT CUSTID TRANSDATE AS 'DATE-TIME' AND COMPUTE ALPHA_DATE_TIME/A20 = HCNVRT(TRANSDATE, '(H17)', 17, 'A20'); DT_FROM_ALPHA/HYYMDS = HINPUT(14, ALPHA_DATE_TIME, 8, 'HYYMDS'); WHERE DATE EQ 2000; END
出力結果は次のとおりです。
CUSTID DATE-TIME ALPHA_DATE_TIME DT_FROM_ALPHA ------ --------- --------------- ------------- 1237 2000/02/05 03:30 20000205033000000 2000/02/05 03:30:00 1118 2000/06/26 05:45 20000626054500000 2000/06/26 05:45:00