[firebase-br] Like em campo Blob

eduardo eduardo em icontroller.com.br
Seg Mar 28 17:25:38 -03 2005


>     SELECT * FROM Venda Vda LEFT OUTER JOIN...
>     WHERE UPPER(Vda.Observacao) like UPPER("jean%") AND ...

- O uso de " está incorreto. Utilize 'jean%' (isso no dialeto 3)
- De qualquer forma, não dá para usar UPPER em BLOBs (pelo menos nos 
testes que fiz)
- Uma boa maneira de se pesquisar em BLOBs é utilizar o CONTAINING que 
faz uma pesquisa muito rápida CASE INSENSITIVE, porém seria o mesmo que 
like '%jean%'
- Me parece, pelos testes que fiz, que o STARTING WITH, quando em BLOBs, 
tanbém é CASE INSENSITIVE. Desta forma você deve alcançar seu objetivo com:

      SELECT * FROM Venda Vda LEFT OUTER JOIN...
      WHERE Vda.Observacao STARTING WITH 'jean'...
OU
      SELECT * FROM Venda Vda LEFT OUTER JOIN...
      WHERE Vda.Observacao CONTAINING 'jean'...

Obs.: Testei com FB 1.52 e DbExpress/D7 driver Interbase

Espero ter ajudado

[]s Eduardo





Mais detalhes sobre a lista de discussão lista