sql >> データベース >  >> RDS >> Oracle

SQLを使用してOracleBLOB列に格納されているファイルの読み取り可能な「ファイルサイズ」を返すエレガントな方法は何ですか?

    「読みやすい」部分は、私がもっと強調すべきだったものです。これが私が今のところまとめたものです。

    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. Oracleデータベースから一意の制約列名を取得する

    2. Railsのmysqlのインストール-mysql2のインストールエラー:エラー:gemネイティブ拡張のビルドに失敗しました

    3. 再起動せずにMySQL構成ファイルを更新するにはどうすればよいですか?

    4. SQLiteクエリ結果をCSVファイルにエクスポートする