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

Mô hình định dạng số TO_Char trong Oracle

Hãy nhớ rằng bạn đang biến đổi một số thành một chuỗi. Con số không có bất kỳ ý nghĩa nào về "," hoặc "." hoặc bất cứ thứ gì - nó là một con số.

Bí quyết là lấy TO_CHAR hàm để chuyển đổi số nội bộ thành biểu diễn chuỗi mà bạn muốn.

Đây là một ví dụ hoạt động:

SELECT to_char(0.00235,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

0,00235

SELECT to_char(156.45823,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

156,45823

SELECT to_char(-0.0235,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

-0,0235

SELECT to_char(-156.45623,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

-156,45623

SELECT to_char(123456789.45623,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

123456789,45623

Các phần liên quan của mặt nạ:

FM được sử dụng để cắt bỏ các khoảng trống ở đầu và cuối mà Oracle thường sử dụng để xóa các số.

D là điểm cơ số, tùy thuộc vào cài đặt NLS của bạn.

NLS_NUMERIC_CHARACTERS ... là ghi đè cài đặt NLS cục bộ của bạn - điều này có thể không cần thiết nếu ngôn ngữ của bạn sử dụng dấu phẩy cho số thập phân, nhưng đó là một cách bạn có thể buộc thực hiện hành vi này trong cơ sở dữ liệu, chẳng hạn như cài đặt Bắc Mỹ.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đẩy con trỏ đơn

  2. ORA-00942:bảng hoặc chế độ xem không tồn tại - Oracle

  3. Hiệu suất chậm trên Hibernate + Java nhưng nhanh khi tôi sử dụng TOAD với cùng một truy vấn Oracle gốc

  4. Kết nối JDBC với cơ sở dữ liệu Oracle bằng Chứng chỉ TLS

  5. Oracle lấy các hàng khớp chính xác với danh sách các giá trị