SELECT COM DATAS

THAINE 26/03/2012 08:47:57
#398254
Bom Diaa
mais uma vez estou precisando da ajuda de vocês..
eu tenho uma tabela onde são armazenadas 5 datas de nascimento..
e eu preciso fazer um relatório onde são exibidos os aniversariantes de um determinado
período..

esse é o meu select, por exemplo

select d.Cod, d.Nome, d.DataNasc, d.Dependente1, d.DataNasc1, d.Dependente2,
d.Esposo, d.DataNascEsposo, d.DataNasc2, d.Dependente3, d.DataNasc3,m.Descricao
from Dizimistas as d
inner join Missa as m on d.CodMissa=m.Cod where
(DAY (d.DataNasc)) between 01 and 05 and
(day (d.DataNasc1)) between 01 and 05 and
(day (d.DataNasc2)) between 01 and 05 and
(day (d.DataNasc3)) between 01 and 05 and
(day (d.DataNascEsposo)) between 01 and 11 and
(MONTH(d.DataNasc)) between 01 and 01 and
(MONTH(d.DataNasc1)) between 01 and 01 and
(MONTH(d.DataNasc2)) between 01 and 01 and
(MONTH(d.DataNasc3)) between 01 and 01 and
(MONTH(d.DataNascEsposo)) between 01 and 06

ele está errado, pois ou ele seleciona todas as datas, ou não aparece nenhuma

Alguém pode me ajudar?
Desde ja agradeço
ALTAIR148 26/03/2012 09:06:11
#398255
Olha, vc está colocando [Ô]AND[Ô] entre uma cláusula e outra, tente colocar [Ô]OR[Ô] ou algo parecido. Sua consulta vai lhe retornar algo só se estiver resultados entre todas as cláusulas.
THAINE 26/03/2012 09:15:39
#398256
esse é o problema..
se não houver resultados em todas as clausulas, é possivel exibir as que possuem resultado
e outras aparecerem NULL ?
ALTAIR148 26/03/2012 09:16:20
#398258
Use o [Ô]OR[Ô] no lugar do [Ô]AND[Ô].
ALTAIR148 26/03/2012 09:18:13
#398259
Uma pergunta, por exemplo como está gravado no campo [Ô]DataNasc[Ô]?
THAINE 26/03/2012 09:44:47
#398263
Muito obrigada pela ajuda..
agora so falta mais uma coisa

como posso usar o case
(case when DataNasc1>[ô]1899-12-30[ô] then DataNasc1 else null end) as DataNasc1

nessa parte do sql

(day (d.DataNasc1)) between 01 and 02 or


THAINE 26/03/2012 09:46:05
#398264
está gravado desse jeito : 2012-03-26
ALTAIR148 26/03/2012 09:51:16
#398266
Não sei lhe dizer ao certo, mas dê uma olhada no artigo baixo e veja se consegue.

http://www.portaleducacao.com.br/informatica/artigos/6356/utilizando-a-clausula-case-em-um-select-sql-server
THAINE 26/03/2012 09:56:06
#398269
ALTAIR148
não deu certo o uso do [Ô]OR[Ô] no lugar do [Ô]AND[Ô]
segue em anexo o período escolhido
e as data exibidas
CASTELO 26/03/2012 10:02:43
#398270
QUal o banco de dados, ACCESS ?
THAINE 26/03/2012 10:04:06
#398271
CASTELO
o banco é sql server 2008
Página 1 de 2 [19 registro(s)]
Tópico encerrado , respostas não são mais permitidas