PHP+ADODB where com periodo
Seguinte galera to usando o ADODB pra fazer um select em uma base de dados MSSQL, no where eu faco isso:
Código :
...and ((PedVenda1.D_DtEmissao >= '12-03-2005') and (PedVenda1.D_DtEmissao <= '01-04-2005')) and...
Quando eu faco esse select usando o MS Query Analizer ele retorna os dados certos desse periodo, mas quando eu faco o mesmo select usando o PHP + ADODB ele nao retorna nada, eu define a query em uma linha e se eu omitir esse trecho ou eliminar os parenteses e deixar apenas uma data ele retorna, eu sei que o problema esta nesses parenteses e/ou como eu to definindo esse periodo, mas oque esta errado?
PHP+ADODB where com periodo
Select PedVenda1.D_DtEmissao, PedVenda1.I_NumNota, Clientes.C_Nome, Vendedores.C_Nome, Produtos.C_Descricao, ProdVenda1.N_Qtde, ProdVenda1.N_VlUnitarioCusto, ProdVenda1.N_VlUnitario from PedVenda1, Clientes, Vendedores, Produtos, ProdVenda1 where PedVenda1.I_NumNota <> 0 and PedVenda1.C_Status = 'Fat' and PedVenda1.I_CodCliente = Clientes.I_Codigo and PedVenda1.I_CodVendedor = Vendedores.I_Codigo and ((PedVenda1.D_DtEmissao >= '12-03-2005') and (PedVenda1.D_DtEmissao <= '01-04-2005')) and PedVenda1.I_Codigo = ProdVenda1.I_CodPedVenda and Produtos.I_CodMarca = 539 and ProdVenda1.I_CodProduto = Produtos.I_Codigo group by PedVenda1.D_DtEmissao, PedVenda1.I_NumNota, Clientes.C_Nome, Vendedores.C_Nome, Produtos.C_Descricao, ProdVenda1.N_Qtde, ProdVenda1.N_VlUnitario, ProdVenda1.N_VlUnitarioCusto order by PedVenda1.D_DtEmissao, PedVenda1.I_NumNota
Essa eh a query completa no geral ela precisa retornar apenas o periodo entra:
12/03/2005 ate 01/04/2005
PHP+ADODB where com periodo
Galera encontrei uma solucao melhor doque esta:
Código :
((PedVenda1.D_DtEmissao >= '12-03-2005') and (PedVenda1.D_DtEmissao <= '01-04-2005'))
Ao invez de definir um periodo dessa forma eu digo pra ele consultar os ultimos, por exemplo, 2 meses:
Código :
(DATEDIFF(month, PedVenda1.D_DtEmissao, getdate()) <= 2)
Valeu!!!