SELECT SUM (obp) AS to_be_paid
FROM
(
SELECT blog_id, MAX (end_date) AS end_date
FROM (
(
SELECT
_blog.id AS blog_id,
(xpath_string (
_product_billing_tmp.data,
'//data/end_date'))::date
AS end_date
FROM _product_association
LEFT JOIN _product_billing_tmp
ON _product_association.id =
_product_billing_tmp.parent_id
INNER JOIN _blog
ON _blog.id =
_product_association.parent_id
WHERE _product_billing_tmp.path <@
" . $db->quote ($params['sitePath']) . "
AND _product_billing_tmp.state = 1
AND _product_association.product_id = 6
)
UNION
(
SELECT
_blog.id AS blog_id,
(xpath_string (
_product_billing.data,
'//data/end_date'))::date
AS end_date
FROM _product_association
LEFT JOIN _product_billing
ON _product_association.id =
_product_billing.parent_id
INNER JOIN _blog
ON _blog.id =
_product_association.parent_id
WHERE _product_billing.path <@
" . $db->quote ($params['sitePath']) . "
AND _product_association.product_id = 6
)
UNION
(
SELECT
_blog.id AS blog_id,
_product_association.date_creation::date
AS end_date
FROM _product_association
INNER JOIN _blog
ON _blog.id = _product_association.parent_id
WHERE _product_association.path <@
" . $db->quote ($params['sitePath']) . "
AND _product_association.product_id = 6
)) AS end_date_select
GROUP BY blog_id
) AS all_end_date,
stats_day_blog
WHERE stats_day_blog.idblog = all_end_date.blog_id
AND day > all_end_date.end_date
AND obp != 0";