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

OracleのTZ_OFFSET()関数

    Oracle Databaseでは、TZ_OFFSET() 関数は、ステートメントが実行された日付に基づいて、引数に対応するタイムゾーンオフセットを返します。

    構文

    構文は次のようになります:

    TZ_OFFSET({ 'time_zone_name'
              | '{ + | - } hh : mi'
              | SESSIONTIMEZONE
              | DBTIMEZONE
              }
             )

    実例をいくつか示します。

    タイムゾーンリージョン名

    有効なタイムゾーンリージョン名を渡すことができます:

    SELECT TZ_OFFSET('Australia/Darwin')
    FROM DUAL;

    結果:

    +09:30

    システムでサポートされているタイムゾーンのリストを取得する方法は次のとおりです。

    タイムゾーンオフセット

    タイムゾーンオフセットを渡すことができます。その場合、それは単に自分自身を返します:

    SELECT TZ_OFFSET('-10:00')
    FROM DUAL;

    結果:

    -10:00

    SESSIONTIMEZONE 機能

    SESSIONTIMEZONE 関数は、現在のセッションのタイムゾーンを返します。これを使用して、現在のセッションのタイムゾーンオフセットを取得できます。

    例:

    SELECT 
        SESSIONTIMEZONE,
        TZ_OFFSET(SESSIONTIMEZONE)
    FROM DUAL;

    セッションの結果:

          SESSIONTIMEZONE    TZ_OFFSET(SESSIONTIMEZONE) 
    _____________________ _____________________________ 
    Australia/Brisbane    +10:00                       

    DBTIMEZONE 機能

    DBTIMEZONE 関数はデータベースのタイムゾーンを返します。これは、SESSIONTIMEZONEと同じ場合と同じでない場合があります。 システム上で。

    例:

    SELECT 
        DBTIMEZONE,
        TZ_OFFSET(DBTIMEZONE)
    FROM DUAL;

    結果:

       DBTIMEZONE    TZ_OFFSET(DBTIMEZONE) 
    _____________ ________________________ 
    +00:00        +00:00                  

    ヌル引数

    nullを渡す 結果はnull

    SET NULL 'null';
    SELECT TZ_OFFSET(null)
    FROM DUAL;

    結果:

    null

    デフォルトでは、SQLclおよびSQL * Plusは、nullの場合は常に空白を返します。 SQL SELECTの結果として発生します 声明。

    ただし、SET NULLは使用できます 返される別の文字列を指定します。ここでは、文字列nullを指定しました 返却する必要があります。

    引数がありません

    引数の数が間違っているか、引数を渡さずに関数を呼び出すと、エラーが発生します:

    SELECT TZ_OFFSET()
    FROM DUAL;

    結果:

    Error starting at line : 1 in command -
    SELECT TZ_OFFSET()
    FROM DUAL
    Error at Command Line : 1 Column : 8
    Error report -
    SQL Error: ORA-00909: invalid number of arguments
    00909. 00000 -  "invalid number of arguments"
    *Cause:    
    *Action:

    1. 行1、列4(年)のバルクロードデータ変換エラー(指定されたコードページのタイプの不一致または無効な文字)

    2. 暗号化された接続SQLServerの証明書の展開

    3. MYSQLDBにBLOBとして保存されている画像を取得します

    4. PostgreSQLでCSVファイルをインポートする方法