Felícia,
quanto a questão do formato de data na consulta só interessa se é em inglês ou português para alguns meses, basta usar o padrão abaixo :
SELECT * FROM COMPRAS
WHERE DATA < '28 abr 2019' ;
se fosse em inglês ficaria assim:
SELECT * FROM COMPRAS
WHERE DATA< '28 apr 2019' ;
Quando ao like não entendi o que você está tentando buscar, mas não faz sentido usar o like em a expressão %, pois se você sabe toda a descrição do dado usa = ou in, então se você quer buscar tudo o que inicia com compras na coluna observação, por exemplo, ficaria assim:
SELECT * FROM COMPRAS
WHERE OBSERVACAO LIKE 'COMPRAS%';
ou
SELECT * FROM COMPRAS
WHERE OBSERVACAO LIKE 'compras%';
se quiser consultar todos que tenha a palavra compras em qualquer posição coloca o % antes também, conforme abaixo:
SELECT * FROM COMPRAS
WHERE OBSERVACAO LIKE '%COMPRAS%';