Jump to content


Photo

Filtro


  • Faça o login para participar
3 replies to this topic

#1 {TeRmInAtOr}

{TeRmInAtOr}

    12 Horas

  • Usuários
  • 174 posts
  • Sexo:Masculino
  • Localidade:New Hamburgo, RS

Posted 27/12/2007, 08:37

Alguém sabe como filtrar todos os registros que começem com números e caracteres especiais?
Fiz um filtro de [A-Z] bem simples LIKE 'a%' ... Só que precisava listar os demais registros que não começam com letras.
Alguem sabe como fazer?

#2 boirock

boirock

    Tecnologia para todos (agora hexa campeão)

  • Usuários
  • 1559 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR
  • Interesses:PostgreSQL - PHP

Posted 27/12/2007, 09:53

Tenta algo com o operador mesmo!
Vê se isso funciona...
SELECT campo FROM tabela WHERE campo !~* '^[A-Z]'

Edição feita por: boirock, 27/12/2007, 09:56.


#3 {TeRmInAtOr}

{TeRmInAtOr}

    12 Horas

  • Usuários
  • 174 posts
  • Sexo:Masculino
  • Localidade:New Hamburgo, RS

Posted 28/12/2007, 16:07

É funciono 100%, só não sei se entendi a expressão...
! = Diferente de (~* '^[A-Z]')
Para a-z usou uma expressão regular.
Seria isto?

Obrigado!

#4 boirock

boirock

    Tecnologia para todos (agora hexa campeão)

  • Usuários
  • 1559 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR
  • Interesses:PostgreSQL - PHP

Posted 28/12/2007, 16:37

~ é um operador!
Digamos que seja equivalente ao sinal de = para expressão regular nesse caso aqui. :ponder:
Citando o manual sagrado do Postgres...

~ Matches regular expression, case sensitive
~* Matches regular expression, case insensitive
!~ Does not match regular expression, case sensitive
!~* Does not match regular expression, case insensitive

Usando uma expressão regular beeem simples (^[A-Z]) tá resolvido (y)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq