デュアルを使用した以下の sql は、問題を再現します。
SELECT TRUNC (SYSDATE) example,
TO_CHAR (TRUNC (SYSDATE), 'FMMonth dd, yyyy')
|| ' '
|| TO_CHAR (TRUNC (SYSDATE), 'hh:MI AM') result_one,
TO_CHAR (TRUNC (SYSDATE), 'FMMonth dd, yyyy hh:MI AM') result_two
FROM DUAL
出力:
EXAMPLE RESULT_ONE RESULT_TWO
12/4/2012 December 4, 2012 12:00 AM December 4, 2012 12:0 AM
RESULT_TWO
出力の時間の分値にゼロがないことに注意してくださいRESULT_ONE
。 RESULT_ONE
は、2 つの別々の形式の指示を追加することによる私の現在の回避策です。この問題は、分にゼロが含まれる時刻値 (例: 11:02 AM) で発生します。
回避策TO_CHAR
を使用せずに実行する方法について何か提案はありますか?RESULT_ONE
Oracle バージョン情報
> BANNER Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 -
> 64bi PL/SQL Release 10.2.0.4.0 - Production CORE 10.2.0.4.0 Production
> TNS for Solaris: Version 10.2.0.4.0 - Production NLSRTL Version
> 10.2.0.4.0 - Production