use a o 
BETWEEN 








  ----- Original Message ----- 
  From: Jorge Ericsson 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, May 05, 2008 3:24 PM
  Subject: Re: [delphi-br] Re: URGENTE: Consulta incremental LIKE


  Na verdade eu andei verificando a minha situação e o like não resolve o meu
  problema.

  Eu preciso usar a claúsula IN para retorna dados entre determinando
  intervalo da seguinte forma:

  select co_agrupado from tabela where co_agrupado in ['A001'..'A999'], onde
  ele precisa me retornar todos os registro dentro desse intervalo tipo:

  A119|B333|C8282|D822
  A113|B323|A003|D8292
  A559|B343|C223|D6552

  Obs: Esse select eu não tó conseguindo montar.

  Valew pessoal

  2008/5/5 carlos alberto do amaral <[EMAIL PROTECTED]>:

  > Olá Jorge,
  >
  > Bom, pelo menos no exemplo, não vejo a necessidade de utilização
  > do upper... Cuidado, dependendo da situação, vc terá que criar um
  > índice para a consulta com a função... Seria interessante, gravar já
  > com o "upper" para evitar transtornos...
  >
  > Quando vc utiliza um select assim: Select co_agrupado from tabela
  > where
  > upper(co_agrupado) like Vc tem que ter um índice com a função
  > upper, correndo o risco de caso não tê-lo, o banco fazer um full scan
  > na table... Claro, caso a sua table tenha muitas linhas...
  >
  > Por que não assim ??
  >
  > Select co_agrupado from tabela where
  > co_agrupado like '%E668%A668%D654%C333%';
  >
  > Um abraço,
  >
  > Carlos
  >
  > P.S.: A primeira vez que vi desta forma o like, foi aqui na lista...
  >
  > --- Em delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>,
  > "Jorge Ericsson"
  > <[EMAIL PROTECTED]> escreveu
  >
  > >
  > > Olá amigos delphianos,
  > >
  > > Meio confuso meu problema, mas crio que a solução está apenas na
  > monstagem
  > > da minha instrução SQL.
  > >
  > > Bom, eu estou com um problema de pesquisa incremental genérica pois
  > utilizo
  > > uma aplicação que pode retorna informções de 3 bancos Firebird,
  > PostgreeSql
  > > e Oracle ao mesmo tempo.
  > >
  > > Na minha tabela eu possuo campos da seguinte forma:
  > >
  > > CO_AGRUPADO
  > > A124|B545|C785|D999|E478
  > > *A334|B767|C333|D354|E809
  > > B786|A792|D654|C333|E668
  > > *
  > > Eu gostaria de ao pesquisar por um código tipo E668A334D654C333 -
  > sem
  > > informa a barra de divisão - ele me retornasse por exemplo a *2ª e
  > 3ª
  > > linhas de registro apenas*, ignorando a 1ª linha pois não existem
  > nenhuma
  > > informação nela que atenda a solicitação do usuário.
  > >
  > > Eu tentei da seguinte forma:
  > >
  > > Select co_agrupado from tabela where
  > > upper(co_agrupado) like upper("E668") or
  > > upper(co_agrupado) like upper("A668") or
  > > upper(co_agrupado) like upper("D654") or
  > > upper(co_agrupado) like upper("C333")
  > >
  > > Mas, apresenta problemas na montagem do FILTER nos componentes
  > usando
  > > Zeos(Firebird), ADO(Oarcle) e DBExpress(PostgreSql) dando erro.
  > >
  > > Alguém poderia dar uma dica ?
  > >
  > > Valew pessoal
  > >
  > > Att,
  > >
  > > Jorge Ericsson S. Pinheiro
  > > Analista/Projetista de Sistemas
  > > Ericsson Sistemas e Soluções
  > > http://www.jericsson.com.br
  > > 61 9227.4785 / 3967.6172
  > > Brasília - DF
  > >
  > >
  > > [As partes desta mensagem que não continham texto foram removidas]
  > >
  >
  > 
  >

  -- 
  Att,

  Jorge Ericsson S. Pinheiro
  Analista/Projetista de Sistemas
  Ericsson Sistemas e Soluções
  http://www.jericsson.com.br
  61 9227.4785 / 3967.6172
  Brasília - DF

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]

Responder a