sql >> Databasteknik >  >> RDS >> Oracle

Oracle - använder bindningsvariabel i LIKE-satsen för dynamisk markör

Det här är en subtil sådan. Det är ofta användbart att börja med en statisk sats, göra rätt och sedan konvertera den till dynamisk SQL.

I icke-dynamisk SQL kan vi göra det så här:

 SELECT column1, column2 
 FROM my_table 
 WHERE column1 LIKE '%' || local_var || '%'; 

Den dynamiska motsvarigheten är

query := 'SELECT column1, column2 
          FROM my_table 
          WHERE column1 LIKE ''%''||:bv1||''%'' ';


  1. Hitta ett värde var som helst i en databas

  2. InnoDB:Operativsystemfel nummer 23 i en filoperation

  3. Serialiserade data i mysql-databasen måste kombineras i en array

  4. Sammanfoga resultat från en SQL-fråga i Oracle