sql >> Database >  >> RDS >> Oracle

Opvragen orakel klob kolom

Ja, het is niet toegestaan ​​(deze beperking heeft geen invloed op CLOB s vergelijking in PL/SQL) om vergelijkingsoperatoren zoals = te gebruiken , != , <> enzovoort in SQL-instructies, wanneer u twee CLOB . probeert te vergelijken kolommen of CLOB kolom en een letter letterlijk, zoals jij. Om een ​​dergelijke vergelijking in SQL-statements te kunnen maken, dbms_lob .compare() functie kan worden gebruikt.

  select * 
    from aTable 
   where dbms_lob.compare(aClobColumn, 'value') = 0

In de bovenstaande zoekopdracht is de 'value' letterlijk wordt impliciet geconverteerd naar de CLOB gegevenstype.Om impliciete conversie te voorkomen, moet de 'value' letterlijk kan expliciet worden geconverteerd naar de CLOB gegevenstype met behulp van TO_CLOB() functie en geef dan door aan de compare() functie:

  select * 
    from aTable 
   where dbms_lob.compare(aClobColumn, to_clob('value')) = 0


  1. Meerdere databases gebruiken in Laravel

  2. converteer lijst naar string om in mijn sql in één rij in python scrapy in te voegen

  3. Waarom vertraagt ​​het veranderen van utf8 naar utf8mb4 mijn database?

  4. Sla PL/pgSQL-uitvoer van PostgreSQL op in een CSV-bestand