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

Cách trả lại số giây phân số từ giá trị ngày giờ trong Oracle

Khi sử dụng Cơ sở dữ liệu Oracle, bạn có thể sử dụng TO_CHAR(datetime) hàm để trả về các phần khác nhau của giá trị ngày giờ, bao gồm cả giây phân số.

Để trả về phần giây phân số từ giá trị datetime, hãy sử dụng FF phần tử định dạng.

Ví dụ

Dưới đây là một ví dụ để chứng minh:

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF')
FROM DUAL;

Kết quả:

123456789

Cũng có thể giới hạn độ chính xác bằng cách thêm một số vào FF phần:

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'FF5')
FROM DUAL;

Kết quả:

12345

Số có thể là 1 thông qua 9 .

Dành phần giây trước

Trong các ví dụ trên, tôi chỉ trả lại phần giây phân số và không trả lại phần nào khác.

Chúng ta có thể bao gồm phần giây cũng như phần giây. Để thực hiện việc này, hãy sử dụng SS . Chúng tôi cũng có thể sử dụng X để chỉ định ký tự cơ số (ký hiệu dùng để tách phần nguyên khỏi phần phân số):

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;

Kết quả:

37.123456789

Mặc dù bạn có thể cung cấp một cách rõ ràng ký tự cơ số của riêng mình - ví dụ:một dấu dừng đầy đủ (. ), X phần tử định dạng có thể hữu ích để chuyển qua các ngôn ngữ / lãnh thổ khác nhau.

Khi tôi chạy các ví dụ trên, NLS_TERRITORY của tôi tham số đã được đặt thành AUSTRALIA , dẫn đến ký tự cơ số là một điểm dừng đầy đủ.

Đây là những gì sẽ xảy ra khi tôi thay đổi NLS_TERRITORY của mình tham số thành GERMANY :

ALTER SESSION SET NLS_TERRITORY = 'GERMANY';

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 10:15:37.123456789', 'SSXFF')
FROM DUAL;

Kết quả:

37.123456789

Bây giờ ký tự cơ số là dấu phẩy.

Nó thực sự là NLS_NUMERIC_CHARACTERS tham số chỉ định ký tự nào được sử dụng cho ký tự cơ số. Tuy nhiên, việc thay đổi NLS_TERRITORY tham số thay đổi hoàn toàn NLS_NUMERIC_CHARACTERS tham số. Bạn cũng có thể cập nhật rõ ràng NLS_NUMERIC_CHARACTERS nếu bạn thích, trong trường hợp đó, NLS_TERRITORY của bạn tham số sẽ không thay đổi.

Xem Danh sách các phần tử định dạng ngày giờ trong Oracle để biết danh sách đầy đủ các phần tử định dạng có thể được sử dụng để định dạng giá trị ngày giờ.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 'Chọn' có luôn sắp xếp theo khóa chính không?

  2. CHÈN với ORDER trên Oracle

  3. Cách cập nhật bảng trong oracle

  4. Sự khác biệt giữa các ký tự N'String 'và U'String' trong Oracle

  5. Làm thế nào để lấy ngày hiện tại trong PL / SQL?