Ir para conteúdo
Fórum Script Brasil
  • 0

Cláusula Where - Deve retornar lista selecionada (In) e ou se em branco Tudo


Treinamento BHP

Pergunta

Boa tarde. 

Estou tentando filtrar uma tabela de notas fiscais, nessa tabela uma coluna UF com estados do Brasil (DF,MG,RJ,etc).  

Já tentei declarando variável, com Case e IIF , mas sem sucesso para atender as duas condições "em lista ou tudo".

Consigo filtrar uma lista quando :

where table1.uf in ('DF','MG','RJ')  

ou 

where table1.uf  in [parâmetro] que captura as UFs digitadas pelo user. 

Funciona retornando todas as informações da lista, ou seja, com mais de um estado 'UF', mas deixando o parâmetro em branco nada retorna e a ideia seria tudo.  

Com where case tentei :

 


Retorna tudo com o parâmetro em branco também OK!

Retorna quando digitado uma UF OK!

Mas da erro de syntax quando digitado mais de um estado como ('RJ','RS').

Alguma dica para solucionar essa condição?

Obrigado

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Bom dia, há alguns anos deixei de usar o SQL Server e não tenho como testar. O operador "IN" é utilizado para verificar uma lista de expressões, e o erro pode ser que o parâmetro seja uma STRING, se for o caso, você pode utilizar a condição abaixo.

where case when trim(@parametro) = '' then true else charindex(uf, @parametro) > 0 end

 

 

Editado por Ronivaldo Lopes
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652,1k
×
×
  • Criar Novo...