fddsantos 0 Denunciar post Postado Dezembro 16, 2011 Boa tarde, Eu quero filtrar registos através de 2 datas, eu já consegui mais ou menos mas resulta se for por exemplo "02-12-2011 to 17-12-2011", mas se for "25-11-2011 to 15-12-2011" já não filtra o código que tenho é este: OleDbCommand oleCommand = new OleDbCommand("Select Data_Registo_Moeda FROM RegistoMoedasConsultaReport where (Data_Registo_Moeda between #" + date_from + "# and #" + date_to + "#)"); Agradeço a atenção, Fábio Santos Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Dezembro 19, 2011 Tecnicamente deveria funcionar. A configuração do seu banco é essa mesmo? ddMMyyyy ? Ja testou a query direto no banco? Caso não esteja funcionando nem direto no banco, moverei o tópico para á area de banco de dados. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
Fernando C 128 Denunciar post Postado Dezembro 19, 2011 Tb ajuda saber qual o banco e versão; o SQL Server, por exemplo, adota 1 formatação de datas na versão 2005 e outra na 2008.. Compartilhar este post Link para o post Compartilhar em outros sites
fddsantos 0 Denunciar post Postado Dezembro 23, 2011 Estou a usar o access 2010 Estou a usar o Access 2010 Compartilhar este post Link para o post Compartilhar em outros sites
berkowitz 2 Denunciar post Postado Dezembro 31, 2011 Cara, teu problema na realidade é na query e não no .net. Between é do mal! Pra ficar um pouco melhor você poderia transformar tua query numa proc, e na tua proc fazer tipo assim: CREATE PROC minhaProc ( @p_dtInicio datetime, @p_dtFim datetime ) AS BEGIN DECLARE @dtFim datetime SET @dtFim = (@p_dtFim+1) SELECT Data_Registo_Moeda FROM RegistoMoedasConsultaReport WHERE (Data_Registo_Moeda >= @p_dtInicio AND Data_Registo_Moeda < @dtFim) END Compartilhar este post Link para o post Compartilhar em outros sites