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

OracleのSYSTIMESTAMP関数

    Oracle Databaseでは、SYSTIMESTAMP 関数は、データベースが存在するシステムの秒数とタイムゾーンを含むシステム日付を返します。

    戻り値のタイプはTIMESTAMP WITH TIME ZONEです。 。

    構文

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

    SYSTIMESTAMP

    したがって、引数は不要(または受け入れ)であり、括弧はありません。

    次に例を示します:

    SELECT SYSTIMESTAMP
    FROM DUAL;

    結果:

    06/AUG/21 07:45:00.540362000 PM -04:00

    この例では、システムのNLS_DATE_FORMATの値に基づいて日付を表示します パラメータ(現在はDD/MON/RR )。 NLS_DATE_FORMATを変更できます パラメータ、またはTO_CHAR()のような関数を使用します 結果を別の形式で返します。

    例:

    SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS TZR')
    FROM DUAL;

    結果:

    2021-08-06 19:48:43 -04:00

    SYSTIMESTAMPの呼び出し かっこ付き

    前述のように、SYSTIMESTAMP 関数は括弧なしで呼び出されます。

    かっこで呼び出すと、次のようになります。

    SELECT SYSTIMESTAMP()
    FROM DUAL;

    結果:

    Error starting at line : 1 in command -
    SELECT SYSTIMESTAMP()
    FROM DUAL
    Error at Command Line : 1 Column : 21
    Error report -
    SQL Error: ORA-30088: datetime/interval precision is out of range
    30088. 00000 -  "datetime/interval precision is out of range"
    *Cause:    The specified datetime/interval precision was not between 0 and 9.
    *Action:   Use a value between 0 and 9 for datetime/interval precision.

    1. PostgreSQLでのAcos()のしくみ

    2. Oracleデータベースのテーブル名変更列を変更します

    3. 間違ったmysqlクライアントライブラリ用にコンパイルされたmysql2gem

    4. MariaDBのHOUR()とEXTRACT(HOUR…):違いは何ですか?