Как запросить ежедневную стоимость конкретного продукта в BigQuery? - PullRequest
1 голос
/ 30 апреля 2019

Я экспортировал биллинг в bigquery и хочу получить общую стоимость переводов за определенную дату из bigQuery ежемесячно или за определенную дату.например, 1 апреля 2019 года.

Пример запроса к Google Документам получают ежемесячно.

SELECT
  invoice.month,
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM UNNEST(credits) c), 0))
    AS total,
  (SUM(CAST(cost * 1000000 AS int64))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount * 1000000 as int64))
                  FROM UNNEST(credits) c), 0))) / 1000000
    AS total_exact
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1
ORDER BY 1 ASC
;

, но я создал свой запрос следующим образом:

$myVariable=
    "SELECT 
          COUNT(*) total_times,
          SUM(cost) total_cost
    FROM 
          `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
    WHERE 
          service.description = 'Translate' AND (usage_end_time >= timestamp('2019-04-04 00:00:00') AND usage_end_time <= timestamp('2019-04-04 23:59:59'))";

Я хочу получитьобщая стоимость текущего дня и общая стоимость с первого дня месяца по текущий день.

sample:
1. 2019/04/04: 4223.05 - (882 Times)
2. 2019/04/Total: 16505.43 - (3882 Times)

1 Ответ

2 голосов
/ 30 апреля 2019

Вы можете дополнительно добавить детали к вашему рабочему запросу:

SELECT
  service.description,
  timestamp_trunc(usage_start_time,DAY) as time_fragment,
  ROUND(SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM UNNEST(credits) c), 0)),3)
    AS total,
  round((SUM(CAST(cost * 1000000 AS int64))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount * 1000000 as int64))
                  FROM UNNEST(credits) c), 0))) / 1000000,3)
    AS total_exact
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
WHERE service.description='Translate'
GROUP BY 1,2
ORDER BY 2 desc;

, который отображает:

enter image description here

Вы можете дополнительно кв ЧАСОВОЙ гранулярности, если вы редактируете строку 3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...