Advertisement
Guest User

Untitled

a guest
Jan 20th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.56 KB | None | 0 0
  1. SELECT
  2. *
  3. FROM (
  4. WITH total_fact_cost_of_work_data (financing_request_id, total_fact_cost_of_work) AS (
  5. SELECT
  6. fr.id,
  7. SUM(aoow.total_fact_cost_of_work)
  8. FROM fin_requests fr
  9. JOIN monitoring_report_requests_relations mrrr ON fr.id = mrrr.fin_request_id
  10. LEFT JOIN overhaul_works_by_contracts owbc ON fr.id = owbc.financing_request_id
  11. LEFT JOIN acts_on_overhaul_works aoow ON owbc.id = aoow.contract_id
  12. WHERE
  13. mrrr.monitoring_report_docs_id = :document_id
  14. AND owbc.deleted_at IS NULL
  15. AND aoow.deleted_at IS NULL
  16. GROUP BY fr.id
  17. ),
  18. ntw_overhaul_cost_total_data (financing_request_id, ntw_overhaul_cost_total) AS (
  19. SELECT
  20. fr.id,
  21. SUM(frhkb.ntw_overhaul_cost_total)
  22. FROM fin_requests fr
  23. JOIN monitoring_report_requests_relations mrrr ON fr.id = mrrr.fin_request_id
  24. LEFT JOIN fin_requests_houses_base frhb ON fr.id = frhb.financing_request_id
  25. LEFT JOIN fin_requests_houses_kr_base frhkb ON frhb.id = frhkb.id
  26. WHERE
  27. mrrr.monitoring_report_docs_id = :document_id
  28. AND frhb.deleted_at IS NULL
  29. GROUP BY fr.id
  30. )
  31. SELECT
  32. fr.id,
  33. fr.geo_tag_id,
  34. fr.request_id,
  35. 'Заявка' AS request_type_name,
  36. fr.registration_number,
  37. fr.approval_date,
  38. tfcowd.total_fact_cost_of_work AS fact_amount_of_overhaul_financing,
  39. CASE WHEN noctd.ntw_overhaul_cost_total <> 0 THEN
  40. ROUND(tfcowd.total_fact_cost_of_work / noctd.ntw_overhaul_cost_total * 100, 2)
  41. END AS percent
  42. FROM fin_requests fr
  43. JOIN monitoring_report_requests_relations mrrr ON fr.id = mrrr.fin_request_id
  44. JOIN total_fact_cost_of_work_data tfcowd ON fr.id = tfcowd.financing_request_id
  45. JOIN ntw_overhaul_cost_total_data noctd ON fr.id = noctd.financing_request_id
  46. WHERE mrrr.monitoring_report_docs_id = :document_id
  47. ) t
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement