Usuário com melhor resposta
Where comparando um Campo Data com >=

Pergunta
-
Boa Tarde Pessoal,
Tenho uma Tabela em que tenho um campo data chamado Data_Efetivação.
Preciso fazer um select em que eu traga informações de período de data;
Como é Possivel?
Hoje faço da seguinte forma:
where Convert(Varchar(10), Data_Efetiva_Financ,103) >= '01/11/2013' and
Convert(Varchar(10), Data_Efetiva_Financ,103) >= '01/11/2013' and
Porém ele esta trazendo todos os registros da tabela. Antes no Sql 2005 funcionava muito bem,
Agora no SQL 2008 estou tendo este problema.
Agradeço desde já;
Wagner
WBarbalho
Respostas
-
Como estão os dados no seu banco?
tente
where Convert(Varchar(8), Data_Efetiva_Financ,112) BETWEEN '20131101' and '20131101'
"A vida é um paraíso, mas os homens não o sabem e não se preocupam em sabê-lo." Fiodor Dostoievski
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
Deleted
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
Wagner,
Evite quaisquer funções na sua cláusula where nos campos das tabelas, pois isso pode afetar a sua performance ao não utilizar um índice para o filtro. Se o seu campo for DATETIME tente assim:
where Data_Efetiva_Financ BETWEEN '2013-11-01 00:00:00' and '2013-11-01 23:59:59'
Roberto Fonseca MCT / MCITP - Database Administrator 2008 MCITP - Database Developer 2008 MCITP - Business Intelligence 2008
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
Bom dia Wagner,
Você chegou a testar alguma solução que lhe foi passada?
Caso alguma delas funcione não esqueça de marcar como resposta para fechar a sua Thread.
Att,
Giovani Cruzara – Microsoft Contingent Staff
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.
Msdn Community Support
Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
José,
Converter o dado para filtrar se o tipo de dado do campo Data_Efetiva_Financ for um dos tipos de data/hora não é necessário... Estará apenas adicionando overhead no servidor, já que o SQL entende perfeitamente o texto 'yyyymmdd' (ou outro formato semelhante, yyyy-mm-dd, etc..) sem precisar fazer conversões.
Roberto Fonseca MCT / MCITP - Database Administrator 2008 MCITP - Database Developer 2008 MCITP - Business Intelligence 2008
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
Todas as Respostas
-
Boa Tarde Pessoal,
Tenho uma Tabela em que tenho um campo data chamado Data_Efetivação.
Preciso fazer um select em que eu traga informações de período de data;
Como é Possivel?
Hoje faço da seguinte forma:
where Convert(Varchar(10), Data_Efetiva_Financ,103) >= '01/11/2013' and
Convert(Varchar(10), Data_Efetiva_Financ,103) >= '01/11/2013' and
Porém ele esta trazendo todos os registros da tabela. Antes no Sql 2005 funcionava muito bem,
Agora no SQL 2008 estou tendo este problema.
Agradeço desde já;
Wagner
WBarbalho
- Mesclado Roberto F FonsecaModerator quarta-feira, 4 de dezembro de 2013 17:37 Mesma thread
-
Como estão os dados no seu banco?
tente
where Convert(Varchar(8), Data_Efetiva_Financ,112) BETWEEN '20131101' and '20131101'
"A vida é um paraíso, mas os homens não o sabem e não se preocupam em sabê-lo." Fiodor Dostoievski
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
Deleted
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
Wagner,
Evite quaisquer funções na sua cláusula where nos campos das tabelas, pois isso pode afetar a sua performance ao não utilizar um índice para o filtro. Se o seu campo for DATETIME tente assim:
where Data_Efetiva_Financ BETWEEN '2013-11-01 00:00:00' and '2013-11-01 23:59:59'
Roberto Fonseca MCT / MCITP - Database Administrator 2008 MCITP - Database Developer 2008 MCITP - Business Intelligence 2008
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
Bom dia Wagner,
Você chegou a testar alguma solução que lhe foi passada?
Caso alguma delas funcione não esqueça de marcar como resposta para fechar a sua Thread.
Att,
Giovani Cruzara – Microsoft Contingent Staff
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.
Msdn Community Support
Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45
-
José,
Converter o dado para filtrar se o tipo de dado do campo Data_Efetiva_Financ for um dos tipos de data/hora não é necessário... Estará apenas adicionando overhead no servidor, já que o SQL entende perfeitamente o texto 'yyyymmdd' (ou outro formato semelhante, yyyy-mm-dd, etc..) sem precisar fazer conversões.
Roberto Fonseca MCT / MCITP - Database Administrator 2008 MCITP - Database Developer 2008 MCITP - Business Intelligence 2008
- Marcado como Resposta Giovani Cr quinta-feira, 12 de dezembro de 2013 10:45