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

Cách thêm chỉ báo AD / BC vào ngày trong Oracle

Khi sử dụng TO_CHAR() chức năng định dạng giá trị ngày giờ trong Cơ sở dữ liệu Oracle, bạn có thể thêm chỉ báo AD / BC bằng cách chỉ cần thêm AD hoặc BC sang mô hình định dạng của bạn.

Sau đó, Oracle hiển thị chỉ báo thích hợp, tùy thuộc vào giá trị ngày là AD hay BC.

Bạn có thể cung cấp nó bằng bất kỳ chữ hoa hoặc chữ thường nào và có hoặc không có dấu chấm (ví dụ:AD , A.D. ad , a.d , vân vân). Sau đó Oracle sẽ hiển thị chỉ báo như đã chỉ định.

Ví dụ

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

SELECT 
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY AD')
FROM DUAL;

Kết quả:

30-12-2030 AD

Trong trường hợp này, ngày là AD và do đó kết quả có AD thêm vào.

AD so với BC

Oracle tìm hiểu xem đó là AD hay BC và hiển thị chỉ báo thích hợp.

Đây là những gì sẽ xảy ra khi tôi thay đổi ngày thành giá trị BC:

SELECT 
    TO_CHAR(date '-2030-12-30', 'DD-MM-YYYY AD')
FROM DUAL;

Kết quả:

30-12-2030 BC

Chỉ báo kết quả là BC, mặc dù chuỗi định dạng của tôi là AD .

Chữ hoa và chữ thường

Thay đổi trường hợp của phần tử định dạng sẽ thay đổi trường hợp của kết quả:

SELECT 
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY AD') AS "Uppercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY ad') AS "Lowercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY Ad') AS "Mixed"
FROM DUAL;

Kết quả:

       Uppercase        Lowercase            Mixed 
________________ ________________ ________________ 
30-12-2030 AD    30-12-2030 ad    30-12-2030 Ad   

Dấu chấm so với Không có dấu chấm

Bạn có thể thêm dấu chấm nếu muốn:

SELECT 
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY A.D.') AS "Uppercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY a.d.') AS "Lowercase",
    TO_CHAR(date '2030-12-30', 'DD-MM-YYYY A.d.') AS "Mixed"
FROM DUAL;

Kết quả:

         Uppercase          Lowercase              Mixed 
__________________ __________________ __________________ 
30-12-2030 A.D.    30-12-2030 a.d.    30-12-2030 A.D.    

Mặc dù vậy, hãy lưu ý rằng điều này ảnh hưởng đến chỉ báo trường hợp hỗn hợp.

Ngày và giờ của hôm nay

Ở đây, tôi vượt qua SYSDATE để sử dụng ngày hiện tại:

SELECT 
    TO_CHAR(SYSDATE, 'DD-MM-YYYY A.D.')
FROM DUAL;

Kết quả:

29-08-2021 A.D.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách làm việc với các Hàm ngày trong Oracle sql

  2. Làm thế nào để nhập ký tự dòng mới trong Oracle?

  3. lỗi từ khóa bị thiếu trong câu lệnh oracle CASE WHEN sql

  4. Làm thế nào tôi có thể nhận được số ngày giữa 2 ngày trong Oracle 11g?

  5. Dấu hai chấm:làm gì trong một truy vấn SQL?