Ano, není to povoleno (toto omezení nemá vliv na CLOB s porovnání v PL/SQL) k použití porovnávací operátory jako = , != , <> a tak dále v příkazech SQL, když se pokoušíte porovnat dva CLOB sloupce nebo CLOB sloupec a znakový doslov, jako vy. Aby bylo možné provést takové srovnání v příkazech SQL, dbms_lob .compare()
lze použít.
select *
from aTable
where dbms_lob.compare(aClobColumn, 'value') = 0
Ve výše uvedeném dotazu 'value' literál bude implicitně převeden na CLOB datový typ. Chcete-li se vyhnout implicitní konverzi, 'value' literál lze explicitně převést na CLOB datový typ pomocí TO_CLOB() a poté předejte do compare() funkce:
select *
from aTable
where dbms_lob.compare(aClobColumn, to_clob('value')) = 0