Först och främst kanske du vill lagra text i CLOB/NCLOB-kolumner istället för BLOB, som är designad för binär data (din fråga skulle förresten fungera med en CLOB).
Följande fråga låter dig se de första 32767 tecknen (högst) i texten inuti BLOB, förutsatt att alla teckenuppsättningar är kompatibla (original CS av texten lagrad i BLOB, CS i databasen som används för VARCHAR2) :
select utl_raw.cast_to_varchar2(dbms_lob.substr(BLOB_FIELD)) from TABLE_WITH_BLOB where ID = '<row id>';