diogo.cwb 0 Denunciar post Postado Agosto 9, 2014 Pessoal, Hoje tenho uma tabela de movimentações : CD_RESIDENTE CD_CASA DT_MOVIMENTACAO x y 2008-03-25 x z 2008-08-01 x w 2008-12-25 x g 2009-04-02 x h 2010-02-08 x w 2010-04-05 x y 2011-05-10 x w 2011-06-03 x y 2013-05-27 A minha ideia seria ter o período em que o residente x estava em cada casa para depois conseguir buscar o total de ocupação de cada casa. Já rachei a cabeça e não consegui montar essa lógica...alguma alma caridosa ? Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 9, 2014 Este tipo de tabela complica a coisa , se tabela tivesso a data_inicio e data_fim da ocupação a solução seria trivial. Mas já que a tabela esta sim , tente algo assim --query basica select cd_casa, dt_movimentacao dt_de, (select min(dt_movimentacao from movimentacoes m2 where m2.cd_casa = m1.cd_casa and m2.dt_movimentacao > m1.dt_movimentacao) from movimentacoes m1 Compartilhar este post Link para o post Compartilhar em outros sites
diogo.cwb 0 Denunciar post Postado Agosto 9, 2014 Motta, Conisgo deixar a tabela com data inicio e fim.....qual seria a solucao trivial ? hehehhehe Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 9, 2014 Use uma function como a DATEDIFF, faça um agrupamento somando estes dias. Compartilhar este post Link para o post Compartilhar em outros sites