Yo la consulta la haría de esta forma
Código COBOL:
WORKING-STORAGE SECTION.
01 DatoABuscar PIC X(....).
Código COBOL:
EXEC SQL BEGIN DECLARE SECTION END-EXEC.
01 CampoDeBusqueda PIC X(...).
01 ResultadoDato1 PIC X(...).
01 ResultadoDato2 PIC X(...).
01 ResultadoDato3 PIC X(...).
EXEC SQL END DECLARE SECTION END-EXEC.
Código COBOL:
PROCEDURE DIVSION.
MOVE SPACES TO DatoABuscar1
MOVE "Lo que quiero buscar" TO DatoABuscar
STRING "%" Delimited by size
DatoABuscar Delimited by " "
"%" Delimited by size
INTO CampoDeBusqueda1
De esta forma, el campo "CampoDeBusqueda" quedaría algo así como "%Lo que quiero buscar%"
y luego, la sentencia SQL, sería
Código SQL:
EXEC SQL
SELECT dato1, dato2, dato3
INTO :ResultadoDato1, :ResultadoDato2, :ResultadoDato3
FROM Tabla
WHERE Campo1 LIKE CampoDeBusqueda1,
AND/OR Campo2 LIKE CampoDeBusqueda1
END-EXEC