Fórum Como realizar esta consulta entre datas e horas? #608371
26/02/2020
0
por exemplo, quero saber quantos ouvintes participaram de ontem do meio dia, até hoje 18 hrs, mas algo esta errado na minha consulta abaixo.
Só que com a consulta realizada, ele não mostra as gravações de ontem depois das 18 até meia noite, ele mostra as de ontem de meio dia as 18, e hoje ele mostra depois do meio dia até as 18..
O que seria?
close;
sql.Clear;
sql.Add('select inscricao_id, inscricao_idouvinte, inscricao_idpromocao, ');
sql.Add('inscricao_datacadastro, inscricao_horacadastro, tbouvinte.ouvinte_nome, ');
sql.Add('tbouvinte.ouvinte_celular, tbouvinte.ouvinte_telefone from tbinscricao ');
sql.Add('LEFT JOIN tbouvinte ');
sql.Add('on(tbinscricao.inscricao_idouvinte = tbouvinte.ouvinte_id) ');
sql.Add('WHERE inscricao_idpromocao like :pPromocao and ');
sql.Add('inscricao_datacadastro BETWEEN :pData1 AND :pData2 ');
sql.Add('and inscricao_horacadastro between :phora1 AND :phora2 ');
sql.Add('ORDER BY inscricao_datacadastro, inscricao_horacadastro');
ParamByName('pPromocao').Value := edt_promocao.EditValue;
ParamByName('pData1').Value := dtinicial.Date;
ParamByName('pData2').Value := dtfinal.Date;
ParamByName('pHora1').Value := strtotime(timetostr(hrinicial.Time));
ParamByName('pHora2').value := strtotime(timetostr(hrfinal.Time));
open;
Agradeço a todos.
Júnior Pinheiro
Curtir tópico
+ 0Posts
26/02/2020
Emerson Nascimento
close;
sql.Clear;
sql.Add('select inscricao_id, inscricao_idouvinte, inscricao_idpromocao, ');
sql.Add('inscricao_datacadastro, inscricao_horacadastro, tbouvinte.ouvinte_nome, ');
sql.Add('tbouvinte.ouvinte_celular, tbouvinte.ouvinte_telefone from tbinscricao ');
sql.Add('LEFT JOIN tbouvinte ');
sql.Add('on(tbinscricao.inscricao_idouvinte = tbouvinte.ouvinte_id) ');
sql.Add('WHERE inscricao_idpromocao like :pPromocao ');
sql.Add('and (inscricao_datacadastro >= :pData1 AND inscricao_horacadastro >= :phora1) ');
sql.Add('and (inscricao_datacadastro <= :pData2 AND inscricao_horacadastro <= :phora2) ');
sql.Add('ORDER BY inscricao_datacadastro, inscricao_horacadastro'
ParamByName('pPromocao').Value := edt_promocao.EditValue;
ParamByName('pData1').Value := dtinicial.Date;
ParamByName('pData2').Value := dtfinal.Date;
ParamByName('pHora1').Value := strtotime(timetostr(hrinicial.Time));
ParamByName('pHora2').value := strtotime(timetostr(hrfinal.Time));
open;Gostei + 0
27/02/2020
Júnior Pinheiro
Gostei + 0
27/02/2020
Emerson Nascimento
close;
sql.Clear;
sql.Add('select inscricao_id, inscricao_idouvinte, inscricao_idpromocao, ');
sql.Add('inscricao_datacadastro, inscricao_horacadastro, tbouvinte.ouvinte_nome, ');
sql.Add('tbouvinte.ouvinte_celular, tbouvinte.ouvinte_telefone from tbinscricao ');
sql.Add('LEFT JOIN tbouvinte ');
sql.Add('on(tbinscricao.inscricao_idouvinte = tbouvinte.ouvinte_id) ');
sql.Add('WHERE inscricao_idpromocao like :pPromocao ');
sql.Add('and (inscricao_datacadastro+inscricao_horacadastro BETWEEN :pDtHr1 AND :pDtHr2) ');
sql.Add('ORDER BY inscricao_datacadastro, inscricao_horacadastro');
ParamByName('pPromocao').Value := edt_promocao.EditValue;
ParamByName('pDtHr1').Value := dtinicial.Date + hrinicial.Time;
ParamByName('pDtHr2').Value := dtfinal.Date + hrfinal.Time;
open;Gostei + 0
01/03/2020
Júnior Pinheiro
Obrigado mesmo.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)