pesquisa por datas e depois filtrar por nome
24/10/2017
0
Estou com uma duvida e gostaria da ajuda de vocês.
Tenho dois campos na minha tabela, Cliente(varchar) e data inicial e data final(date), como faço para fazer uma pesquisa por exemplo entre datas e de depois pelo nome do cliente.
Desde já agradeço!
Júnior Brito
Posts
24/10/2017
Julio Costa
SELECT * FROM TABELA
WHERE data BETWEEN '2017-10-01' AND '2017-10-24'
POR CLIENTE
SELECT * FROM TABELA
WHERE cliente='julio';
24/10/2017
Ismael Sousa
FROM cliente AS c
WHERE c.datacriacao BETWEEN '01/01/2017' AND '31/01/2017'
AND c.nome LIKE ('%nome%')
24/10/2017
Júnior Brito
procedure TfrmModelo.btnpesquisarClick(Sender: TObject); begin with dm.CDSPROPOSTA do begin close; FetchParams; Params.ParamByName('DATAINI').AsDate:=dtpInicial.Date; Params.ParamByName('DATAFIM').AsDate:=dtpFinal.Date; Open; end; if (cbxField.Text <> EmptyStr) and (edtValor.Text <> EmptyStr) then begin ds.DataSet.Filter := 'Upper('+ Ds.DataSet.Fields[ListaField[cbxField.ItemIndex]].FieldName +') like '+QuotedStr(UpperCase(edtValor.Text)+'%'); ds.DataSet.filtered := true; if not ds.dataset.Active then ds.DataSet.Open; end; end;
24/10/2017
Júnior Brito
select
ASSOCIADO,
CPF_CNPJ,
DEV_ANALISTA,
DIAS_ANALISTA,
DIAS_GERENTE,
DIAS_VOTE,
DT_FORM,
DT_VOTE,
DTFIN_ANALISTA,
DTFIN_GERENTE,
DTFIN_VOT,
DTIN_ANALISTA,
DTIN_GERENTE,
FERIADO,
HORA_ANALISTA,
HORAFIN_GERENTE,
HORAS_GERENTE,
HORAS_VOTE,
HR_FORM,
HR_VOTE,
HRFIN_ANALISTA,
HRFIN_VOT,
HRIN_ANALISTA,
HRIN_GERENTE,
MODALIDADE,
MOT_ANALISTA,
NIVEL_PRO_GERENTE,
NR_PROPOSTA,
OBS_FORM,
PA,
PROPOSTA_CRL,
PROPOSTA_ID,
STATUS_ANALISTA,
STATUS_VOTE,
USU_ANALISTA,
USU_FORM,
USU_GERENTE,
USU_VOTE,
PRODUTIVIDADE_ANALI,
PRODUTIVIDADE_GER,
PRODUTIVIDADE_VOT,
PRODUTIVIDADE_ANALI_DIAS,
PRODUTIVIDADE_GER_DIAS,
PRODUTIVIDADE_VOT_DIAS,
VOT_DT2,
VOT_DT3,
VOT_DT4,
VOT_DT5,
VOT_DT6,
VOT_DT7,
VOT_DT8,
VOT_DT9,
VOT_HORA2,
VOT_HORA3,
VOT_HORA4,
VOT_HORA5,
VOT_HORA6,
VOT_HORA7,
VOT_HORA8,
VOT_HORA9,
VOT_STATUS2,
VOT_STATUS3,
VOT_STATUS4,
VOT_STATUS5,
VOT_STATUS6,
VOT_STATUS7,
VOT_STATUS8,
VOT_STATUS9,
VOT_USU2,
VOT_USU3,
VOT_USU4,
VOT_USU5,
VOT_USU6,
VOT_USU7,
VOT_USU8,
VOT_USU9,
VALOR FROM PROPOSTAS WHERE DTIN_GERENTE BETWEEN :DATAINI AND :DATAFIM
25/10/2017
Natanael Ferreira
WHERE(ASSOCIADO LIKE: NOME) OR (DTIN_GERENTE BETWEEN: DATAINI AND : DATAFIM)
E o seu botão de pesquisas para:
with dm.CDSPROPOSTA do begin close; FetchParams; Params.ParamByName('NOME').AsDate := '%' + Edit1.Text + '%'; Params.ParamByName('DATAINI').AsDate := dtpInicial.Date; Params.ParamByName('DATAFIM').AsDate := dtpFinal.Date; Open; end; if (cbxField.Text <> EmptyStr) and (edtValor.Text <> EmptyStr) then begin ds.DataSet.Filter := 'Upper(' + ds.DataSet.Fields[ListaField[cbxField.ItemIndex]].FieldName + ') like ' + QuotedStr(UpperCase(edtValor.Text) + '%'); ds.DataSet.filtered := true; if not ds.DataSet.Active then ds.DataSet.Open; end;
25/10/2017
Natanael Ferreira
WHERE (ASSOCIADO LIKE: NOME) OR (DTIN_GERENTE BETWEEN: DATAINI AND : DATAFIM)
with dm.CDSPROPOSTA do begin close; FetchParams; Params.ParamByName('NOME').AsString := '%' + Edit1.Text + '%'; Params.ParamByName('DATAINI').AsDate := dtpInicial.Date; Params.ParamByName('DATAFIM').AsDate := dtpFinal.Date; Open; end; if (cbxField.Text <> EmptyStr) and (edtValor.Text <> EmptyStr) then begin ds.DataSet.Filter := 'Upper(' + ds.DataSet.Fields[ListaField[cbxField.ItemIndex]].FieldName + ') like ' + QuotedStr(UpperCase(edtValor.Text) + '%'); ds.DataSet.filtered := true; if not ds.DataSet.Active then ds.DataSet.Open; end;
25/10/2017
Júnior Brito
Como são dois tipos de busca como eu faço para atualizar.
O que acontece agora é quando faço a busca pela data ex: 01/10/2017 a 10/10/2017 ele traz o resultado normal, porem ao tentar realizar uma nova pesquisa ele me retorna os dados da pesquisa feita anteriormente não atualiza.
Clique aqui para fazer login e interagir na Comunidade :)