Cơ sở dữ liệu Oracle cung cấp SSSSS
phần tử định dạng cho phép chúng tôi lấy số giây quá nửa đêm từ một giá trị ngày giờ nhất định.
Ví dụ
Dưới đây là một ví dụ để chứng minh:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 00:01:05', 'SSSSS')
FROM DUAL;
Kết quả:
00065
Ở đây, chúng ta có thể thấy rằng phần thời gian là 00:01:05
, nghĩa là 12 giờ sáng 1 phút 5 giây.
Tổng cộng 1 phút 5 giây là 65 giây.
Đây là một ví dụ khác:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 23:59:59', 'SSSSS')
FROM DUAL;
Kết quả:
86399
Bây giờ chúng ta đang ở đầu bên kia của thái cực.
Trên thực tế, chúng tôi có thể tiến thêm một bước nữa và trả về giây phân số:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 23:59:59.999999999', 'SSSSSXFF')
FROM DUAL;
Kết quả:
86399.999999999
Trong trường hợp này, chúng tôi đã sử dụng FF
phần tử định dạng để trả về giây phân số và X
phần tử định dạng để trả về ký tự cơ số. Ký tự này có thể khác nhau, tùy thuộc vào ngôn ngữ của phiên hiện tạ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ờ.