consulta de datas via sq1l em tabela paradox

13/03/2013

0

Prezados,

Estou precisando de um relatorio em delphi 7, usando tabela PARADOX com um campo de data (DtNasc). Preciso selecionar neste relatorio os registros de um determinado mês (aniversariantes no mês "X"). Tenho pouco conhecimento em SQL. Por favor me ajudem. estou tentando a seguinte rotina que retorna erro:


Dtm_Secre.qMembros_o.Close;
Dtm_Secre.qMembros_o.Sql.Clear;
Dtm_Secre.qMembros_o.Sql.Add('Select EXTRACT(MONTH FROM DTNASC) = 3 from MEMBROS );
Dtm_Secre.qMembros_o.ExecSql;
Dtm_Secre.qMembros_o.Open;

Se possível, gostaria também de uma orientação em como ordenar este resultado pelo dia do mês.

obrigado

Gilberto Santana
Gilberto Moreira

Gilberto Moreira

Responder

Posts

13/03/2013

Evandro Sanz

Boa Tarde,

Pelo que entendi o sql ficaria assim sendo que DE E ATÉ são paramentros onde você ira digitar as datas

select campos_que _deseja from membros
where DTNASC BETWEEN :DE AND :ATE


Espero ter ajudado.
Responder

13/03/2013

Gilberto Moreira

prezado, desta forma não me atende, pois teria que passar uma data inicial e uma final. Preciso que a consulta me retorne TODOS que estão dentro de um determinado mês, por exemplo: aniversariantes do mes de março. A resposta deverá contemplar todos os dias de todos os anos...

Responder

13/03/2013

Evandro Sanz

SELECT * FROM MEMBROS
where MONTH(DTNASC) = 12

No lugar do doze voce coloca o mês desejado!
Tente assim!
Responder

13/03/2013

Perivaldo Martins

Tente assim:
with Queryx do
begin
  Close;
SQL.Clear;
SQL.Add('SELECT * FROM MEMBROS WHERE MONTH(DTNASC) = :nMES');
SQL.ParamByName('nMES').AsInteger := StrToInt(nMes.Text);
Open;
end;

É só uma idéia, substitua Queryx por seu componente de acesso, nMes.Text seria um Edit ou DBEdit, veja qual atende a sua necessidade.


Boa sorte e bons códigos!
Responder

13/03/2013

Gilberto Moreira

Valeu sua orientação; muito obrigado.

Agora tenho outra pergunta,

Qual o operador devo utilizar numa consulta SQL para NÃO RETORNAR determinado titulo de um campo:

Tenhos vários cargos no campo CARGO entre eles "sem cargo". Quero filtrar para retornar todos os cargos, exceto "sem gargo".

Estou usando: "select * from MEMBROS where CarEcles <> "SEM CARGO" Order By NOME

´Ta retornando erro token >

Pode me ajudar?
Responder

13/03/2013

Perivaldo Martins

Valeu sua orientação; muito obrigado.

Agora tenho outra pergunta,

Qual o operador devo utilizar numa consulta SQL para NÃO RETORNAR determinado titulo de um campo:

Tenhos vários cargos no campo CARGO entre eles "sem cargo". Quero filtrar para retornar todos os cargos, exceto "sem gargo".

Estou usando: "select * from MEMBROS where CarEcles <> "SEM CARGO" Order By NOME

´Ta retornando erro token >

Pode me ajudar?


Teste o código abaixo:
select * from MEMBROS where CarEcles != "SEM CARGO" Order By NOME


Boa sorte e bons códigos!
Responder

14/03/2013

Gilberto Moreira

Muito obrigado novamente. funcionou perfeito.

Por oportuno, tem endereço de alguma apostila mais completa de SQL aplicado ao paradox para me passar?

Obrigado
Responder

15/03/2013

Perivaldo Martins

Muito obrigado novamente. funcionou perfeito.

Por oportuno, tem endereço de alguma apostila mais completa de SQL aplicado ao paradox para me passar?

Obrigado


Infelizmente não, mas você pode encontrar muita coisa sobre SQL na NET.

Boa sorte e bons códigos!
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar