Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

webfuture

Select de valor NULL

Recommended Posts

Olá pessoal, estou com um probleminha aqui, tenho uma tabela com um campo que armazena o valor NULL na mesma porem tento fazer um select mas não acha resultado, ja tentei com where campo is null ou where campo <> 's' e nada não vem, o que preciso fazer para que ele venha ?

 

Alguém pode me dar um help ?

 

Xavier

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, acho que descobri mas nao consegui resolver o que é, na verdade acredito que o problema esteja no between de datas ele não resultados vejam:

 

mes = month(now)
dia = day(now)

data_inicio = dia & "/" & mes & "/" & year(now) & " " & hour(now) & ":00:00"
data_termino = dia & "/" & mes & "/" & year(now) & " " & hour(now) & ":59:59"

SQL = "Select top 100 transferido, transferido_reenvio, data_envio, data_reenvio, id_remetente, id_cadastro, id_campanha from tb_remetentes where data_envio between '"& data_inicio &"' and '"& data_termino &"' and transferido = '' or data_envio between '"& data_inicio &"' and '"& data_termino &"' and transferido IS NULL or data_reenvio between '"& data_inicio &"' and '"& data_termino &"' and transferido_reenvio = '' or data_reenvio between '"& data_inicio &"' and '"& data_termino &"' and transferido_reenvio IS NULL"

Alguém pode me dar um help ? O tipo de dados do campo data_envio e data_reenvio é datetime e do campo transferido ou transferido_reenvio é char(1)

 

Xavier

Compartilhar este post


Link para o post
Compartilhar em outros sites

para filtro de datas utilize no formato yyyyMMdd, esse formato é geral e não vai depender de configurações regionais, isso você pode fazer onde esta formatando suas variáveis data_inicio e data_termino

 

para o null podes utilizar tb. assim: ISNULL(transferido_reenvio,'') = '' com isso vai pegar os registros que estejam com NULL e tb. os registros que estejam vazio ''

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá eriva_br, coloquei o isnull da forma que você falou e da o seguinte erro:

 

An expression of non-boolean type specified in a context where a condition is expected, near 'or'

 

Com relação a data este sistema usava mysql antes e estava neste formato já como yyyy-mm-dd e mudei para o formato que é dd/mm/aaaa por causa do sql server.

 

Xavier

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá eriva_br, coloquei o isnull da forma que você falou e da o seguinte erro:

 

An expression of non-boolean type specified in a context where a condition is expected, near 'or'

 

o erro é outra coisa, pois utilizo esse comando com muita frequencia e funciona que é uma beleza, confere ai:
OR ISNULL(transferido_reenvio,'') = ''
para ajudar tenta dar um print do seu comando sql e executar ele no editor de sql que você utiliza

 

Com relação a data este sistema usava mysql antes e estava neste formato já como yyyy-mm-dd e mudei para o formato que é dd/mm/aaaa por causa do sql server.

 

o sql server tb. trabalha com esse formato, não há necessidade de mudar, acredito que quase todos, senão todos banco de dados trabalham com esse formato

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.