sql >> データベース >  >> RDS >> Oracle

Oracleセッションの日付形式を確認する方法

    日付を返す関数を使用する場合、Oracle Databaseは、NLS_DATE_FORMATの値に基づいてこれらの日付を返します。 パラメータ。

    NLS_TIMESTAMP_FORMATもあります パラメータとNLS_TIMESTAMP_TZ_FORMAT パラメータ。どちらも、個別に指定できる日時形式のマスクがあります。

    これらのパラメータはすべて、NLS_TERRITORYから派生したデフォルト値を持っています パラメータ(デフォルトでは、オペレーティングシステムに依存します)。

    設定を確認する

    V$NLS_PARAMETERSをクエリできます これらのパラメーター(およびその他のNLSパラメーター)の現在の値を確認するために表示します。

     SELECT
        PARAMETER,
        VALUE
    FROM V$NLS_PARAMETERS
    WHERE PARAMETER IN (
        'NLS_TERRITORY',
        'NLS_DATE_FORMAT',
        'NLS_TIMESTAMP_FORMAT',
        'NLS_TIMESTAMP_TZ_FORMAT'
        ); 

    結果:

    パラメータ値_________________________________________________________NLS_TERRITORY AMERICA NLS_DATE_FORMAT DD-MON-RR NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIMESTAMP_TZ_FORMAT DD-MON 

    NLS_TERRITORYの値 パラメータはAMERICAです 、およびさまざまな日時パラメータは、その地域のデフォルトのフォーマットモデルを使用します。

    これらの値は、特定の関数を使用するときに日付がどのようにフォーマットされるかに影響します。たとえば、SYSDATEの使用例を次に示します。 現在の日付を返すには:

     SELECT SYSDATE
    FROM DUAL; 

    結果:

     09-AUG-21 

    必要に応じて、セッションスコープのNLSパラメータの値を変更できます。例については、Oracleセッションで日付形式を変更する方法を参照してください。

    その他のNLSパラメータ

    V$NLS_PARAMETERS 上記のパラメータに加えて、他のパラメータが含まれています。ビュー内のすべての行と列を返す例を次に示します。

     SELECT *
    FROM V$NLS_PARAMETERS; 

    結果:

     PARAMETER VALUE CON_ID __________________________ _______________________________ _________ NLS_LANGUAGE AMERICAN 3 NLS_TERRITORY AMERICA 3 NLS_CURRENCY $ 3 NLS_ISO_CURRENCY AMERICA 3 NLS_NUMERIC_CHARACTERS ., 3 NLS_CALENDAR GREGORIAN 3 NLS_DATE_FORMAT DD-MON-RR 3 NLS_DATE_LANGUAGE AMERICAN 3 NLS_CHARACTERSET AL32UTF8 3 NLS_SORT BINARY 3 NLS_TIME_FORMAT HH.MI.SSXFF AM 3 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM 3 NLS_TIME_TZ_FORMAT HH .MI.SSXFF AM TZR 3 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR 3 NLS_DUAL_CURRENCY $ 3 NLS_NCHAR_CHARACTERSET AL16UTF16 3 NLS_COMP BINARY 3 NLS_LENGTH_SEMANTICS BYTE 3 NLS_N 

    このビューにリストされていない他のNLSパラメータもあります(NLS_LANGなど)。 、NLS_CREDIT 、およびNLS_DEBIT )、ただし、環境変数としてのみ設定できます(つまり、セッションでは設定できません)。

    NLSパラメータは、データベースレベル、初期化パラメータファイル、環境変数、セッションレベル、さらには一部の関数内など、さまざまな場所で設定できます。これらのそれぞれは、他との関係で事前に決定された優先順位を持っています。

    セッションスコープの値(この記事で概説)は、関数を呼び出すときに引数として明示的に指定されている場合を除いて、他のすべてのスコープをオーバーライドします。

    各スコープが他のスコープとの関係で持つ優先順位の概要を示す表については、NLSパラメーターとその優先順位を設定する方法を参照してください。

    各スコープから値を返すために使用できるさまざまなビューについて説明している、NLSパラメーターの値を確認する方法も参照してください。


    1. Oracle APEXのレポートの各行に編集ボタンを追加するにはどうすればよいですか?

    2. SQLで平均を丸めるときに小数を取得するにはどうすればよいですか?

    3. Slony-I2.0.xを最新バージョン2.1.xにアップグレードする

    4. 複数の結果セットを持つストアドプロシージャからデータを取得します