ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

[Resolvido]Firebird + Cursor

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
olifile
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 1 de Abril de 2005
Mensagens: 256
Localização: Portugal

MensagemEnviada: Dom Fev 18, 2007 6:27 pm    Assunto: [Resolvido]Firebird + Cursor Responder com Citação

boas!!!

Gostaria de saber se é possivel criar um cursor dentro do Firebird 2.0 para eu poder contar todos os domingo entre duas datas.

SELECT DataInicio, current_Date From Alguer

e gostava de contar os domingos existentes entre a data de inicio até ao dia de hoje....

Espero que seja possivel....
_________________
Abraços,
Filipe Oliveira
<i><b>Status MSN</b></i>


Editado pela última vez por olifile em Qua Fev 21, 2007 12:54 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
thomazs
Moderador
Moderador


Registrado: Segunda-Feira, 1 de Março de 2004
Mensagens: 2835

MensagemEnviada: Seg Fev 19, 2007 5:25 pm    Assunto: Responder com Citação

Cursor tem... é usado em For Select .... No FB2, tem-se a criação de cursores, como no Postgree e outros. (Create Cursor... Open Cursor... Fetch...)
_________________
Suporte e Consultoria em Desenvolvimento de Sistemas
Bacharel em Sistemas de Informação
Especialista em Bancos de Dados
Desenvolvimento: Clipper, Delphi, PHP, Python/Django
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
olifile
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 1 de Abril de 2005
Mensagens: 256
Localização: Portugal

MensagemEnviada: Ter Fev 20, 2007 1:26 pm    Assunto: Responder com Citação

é possivel arranjar-me um exemplo pois ainda nao consegui....tentei fazer do tipo de SqlServer mas nao deu resultado Sad
_________________
Abraços,
Filipe Oliveira
<i><b>Status MSN</b></i>
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
thomazs
Moderador
Moderador


Registrado: Segunda-Feira, 1 de Março de 2004
Mensagens: 2835

MensagemEnviada: Qua Fev 21, 2007 12:48 pm    Assunto: Responder com Citação

Bom, se o que você quer é verificar, dentro os dados constantes na tabela, a quantidade de domingos em datas, faria assim:

Código:

declare variable dt Date;
declare variable i integer;


i = 0;
for select data from tabela into :dt do
  if extract(weekday from dt)=0 then
    i = i + 1;



ao final do for, a variável i teria a quantidade de domingos constantes nas datas armazenadas na tabela. Agora, se a idéia é ter a qtd de domingos entre 2 datas, sem verificar tabelas do banco, mas sim usando uma procedure, ficaria assim:

Código:

set term ^ ;
create procedure sp_conta_domingos(dtI date, dtF date)
returns ( qtDomingos integer )
as
declare variable dt Date;
begin
  qtDomingos = 0;
  dt = dtI;
  while ( dt <= dtF) do begin
    if extract(weekday from dt) = 0  then
      qtDomingos = qtDomingos + 1;
    dt = dt + 1;
  end
end
^
set term ; ^

_________________
Suporte e Consultoria em Desenvolvimento de Sistemas
Bacharel em Sistemas de Informação
Especialista em Bancos de Dados
Desenvolvimento: Clipper, Delphi, PHP, Python/Django
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
olifile
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 1 de Abril de 2005
Mensagens: 256
Localização: Portugal

MensagemEnviada: Qua Fev 21, 2007 12:54 pm    Assunto: Responder com Citação

Sim eu ontem a noite consegui resolver o meu problema mas nao me lembrei de avisar aqui no forum....Mas obrigado pela dica.
Laughing
_________________
Abraços,
Filipe Oliveira
<i><b>Status MSN</b></i>
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB