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

1000000 đến 1M và 1000 đến 1K trong truy vấn oracle

Tôi không nghĩ rằng có một hàm tiêu chuẩn (ngoại trừ ký hiệu khoa học), nhưng bạn có thể tự xác định một hàm như vậy:

SQL> WITH DATA AS (SELECT power(10, ROWNUM) num FROM dual CONNECT BY LEVEL <= 9)
  2  SELECT num,
  3         CASE
  4            WHEN num >= 1e6 THEN
  5             round(num / 1e6) || 'M'
  6            WHEN num >= 1e3 THEN
  7             round(num / 1e3) || 'k'
  8            ELSE to_char(num)
  9         END conv
 10    FROM DATA;

       NUM CONV
---------- -----------------------------------------
        10 10
       100 100
      1000 1k
     10000 10k
    100000 100k
   1000000 1M
  10000000 10M
 100000000 100M
1000000000 1000M



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xuất dữ liệu sang Excel từ bảng Oracle bằng PL SQL

  2. Cách thêm ràng buộc không null trên cột chứa giá trị null

  3. Tạo bảng thông qua Dòng lệnh SQL, mã định danh không hợp lệ

  4. Giải thích về toán tử INTERSECT của Oracle

  5. Hàm Pipelined của Oracle