Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Cách sử dụng QUERY trong expdp để chỉ trích xuất dữ liệu 3 tháng qua

Xóa dấu chấm phẩy trong QUERY tham số:

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')" 

Một lưu ý nhỏ:

Không liên quan trực tiếp đến vấn đề của bạn. Nhưng hãy nhớ TO_DATE phụ thuộc NLS . Bạn nên chỉ định NLS_DATE_LANGUAGE , nếu không truy vấn của bạn có thể không thành công cho một nls_date_language khác.

Ví dụ:

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

Tôi muốn sử dụng ANSI Date theo nghĩa đen , khi bạn không có bất kỳ phần thời gian nào . Nó là NLS độc lập . Nó sử dụng định dạng cố định YYYY-MM-DD .

Ví dụ:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để chạy một thủ tục được lưu trữ Oracle trong Ruby

  2. Sử dụng nhiều truy vấn lồng nhau trong Oracle DBMS

  3. Cách nhanh nhất để thực hiện so sánh trường trong cùng một bảng với lượng lớn dữ liệu trong oracle

  4. Oracle:Cập nhật cột bảng bằng ROWNUM kết hợp với mệnh đề ORDER BY

  5. Oracle:Tôi cần một phần bên ngoài tham gia. Nhìn vào hình ảnh