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

Cách thanh lịch để trả về 'kích thước tệp' có thể đọc được của tệp được lưu trữ trong cột oracle blob bằng cách sử dụng SQL là gì?

Phần 'có thể đọc được' là điều tôi nên nhấn mạnh hơn. Đây là những gì tôi tổng hợp lại cho đến bây giờ.

WITH file_sizes AS
     (SELECT 1048576 MEGABYTE, 1024 KILOBYTE,
             DBMS_LOB.GETLENGTH (BLOB_COLUMN) byte_size
        FROM BLOB_COLUMN)
SELECT (CASE TRUNC (byte_size / MEGABYTE)
           WHEN 0
              THEN TO_CHAR ((byte_size / KILOBYTE), '999,999') || ' KB'
           ELSE TO_CHAR ((byte_size / MEGABYTE), '999,999.00') || ' MB'
        END
       ) display_size
  FROM file_sizes


Output:

DISPLAY_SIZE  
--------------
       1.88 MB
     433 KB   
     540 KB   
     333 KB   
       1.57 MB
       1.17 MB


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố tò mò với Oracle UNION và ORDER BY

  2. quy trình con đưa ra lỗi. Hệ thống không thể tìm thấy các tập tin được chỉ định

  3. PhpStorm không thể phân giải cột cho nhiều kết nối cơ sở dữ liệu

  4. Xuất bảng kết xuất bằng cách sử dụng SQL DEVELOPER

  5. Hành vi của Oracle rownum với chức năng mod