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

expdpでQUERYを使用して、過去3か月のデータのみを抽出する方法

    削除 QUERYのセミコロン パラメータ:

    QUERY=TABLE1,TABLE2:"where TABLE1_STARTTIME >= TO_DATE('01-AUG-2015','dd-mon-yyyy') 
                         and TABLE2_STARTIME >= TO_DATE('01-AUG-2015','dd-mon-yyyy')" 
    

    補足:

    あなたの問題に直接関係していません。ただし、 TO_DATEを覚えておいてください NLSに依存 NLS_DATE_LANGUAGEを指定する必要があります そうしないと、別のnls_date_languageでクエリが失敗する可能性があります。

    たとえば、

    SQL> alter session set nls_date_language='FRENCH';
    
    Session altered.
    
    SQL> SELECT TO_DATE('01-AUG-2015','dd-mon-yyyy') FROM DUAL;
    SELECT TO_DATE('01-AUG-2015','dd-mon-yyyy') FROM DUAL
                   *
    ERROR at line 1:
    ORA-01843: not a valid month
    
    
    SQL> SELECT TO_DATE('01-AUG-2015','dd-mon-yyyy', 'nls_date_language=ENGLISH') FROM DUAL;
    
    TO_DATE('01
    -----------
    01-AO█T -15
    

    ANSI日付リテラルを使用したい 、時間部分がない場合 。 NLSに依存しません 。固定形式のYYYY-MM-DDを使用します 。

    たとえば、

    SQL> alter session set nls_date_language='FRENCH';
    
    Session altered.
    
    SQL> SELECT DATE '2015-08-01' FROM DUAL;
    
    DATE'2015-0
    -----------
    01-AO█T -15
    
    SQL> alter session set nls_date_language='AMERICAN';
    
    Session altered.
    
    SQL> SELECT DATE '2015-08-01' FROM DUAL;
    
    DATE'2015
    ---------
    01-AUG-15
    



    1. SqlPlusクエリの問題(パッケージの仕様と本文)

    2. MySQLクエリ:CONCAT_WSとCOALESCEを使用して、コンマで区切られた結果値を適切に識別し、元の概念に再変換する方法

    3. PHPスクリプトを終了した後、MySQLクエリを強制終了または停止します

    4. トップ5の無料データベース設計ツール