Advertisement
Guest User

Untitled

a guest
May 24th, 2016
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. select
  2. 'UPDATE iprecos SET DATA_ULT = ''25.02.2016 12:30'', validade_inicial = ''02.04.2016 23:59'' WHERE cpreco = ' || idPorFuturo || ';' as updatePrecoFuturo,
  3. 'UPDATE iprecos SET DATA_ULT = ''25.02.2016 12:30'', validade_final = ''01.04.2016 23:59'' WHERE cpreco = ' || idPorAtual || '; -- ' as updatePrecoAtual,
  4. tb.produto,
  5. tb.cod_produto,
  6. tb.descricao_literal,
  7. pAtual.preco as precoAtual,
  8. pAtual.validade_final as validadeFinal,
  9. pFuturo.preco as precoFuturo,
  10. pFuturo.validade_inicial as validadeInicial
  11. from (
  12.  
  13. select
  14. p.produto,
  15. p.cod_produto,
  16. p.descricao_literal,
  17. (
  18. -- Anterior
  19. select first 1 cpreco from iprecos where produto = p.produto
  20. and tabela = 3
  21. and VALIDADE_FINAL <= cast('Now' as date)
  22. ) as idPorAnterior,
  23. (
  24. -- Atual
  25. select first 1 cpreco from iprecos where produto = p.produto
  26. and tabela = 3
  27. and cast('Now' as date) >= VALIDADE_INICIAL and cast('Now' as date) <= VALIDADE_FINAL
  28. ) as idPorAtual,
  29. (
  30. -- Próximos
  31. select first 1 cpreco from iprecos where produto = p.produto
  32. and tabela = 3
  33. and VALIDADE_INICIAL > cast('Now' as date)
  34. ) as idPorFuturo
  35. from produtos p
  36. where
  37. p.cod_produto in (
  38.  
  39. '1936',
  40. '1904',
  41. '1923',
  42. '1915',
  43. '1916',
  44. )
  45.  
  46.  
  47. ) as tb
  48. left join iprecos pAtual on pAtual.cpreco = idPorAtual
  49. -- left join iprecos pAtual on ((pAtual.cpreco = idPorAtual and pAtual.cpreco is not null) or ((pAtual.cpreco = idPorAnterior and pAtual.cpreco is null)) )
  50. left join iprecos pFuturo on pFuturo.cpreco = idPorFuturo
  51.  
  52. -- where cod_produto = '1924'
  53. order by
  54. pFuturo.validade_inicial asc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement