Skip to content

Instantly share code, notes, and snippets.

@allenday
Last active August 11, 2021 03:19
Show Gist options
  • Save allenday/24904243debe64b8f33f98bc3f65ff70 to your computer and use it in GitHub Desktop.
Save allenday/24904243debe64b8f33f98bc3f65ff70 to your computer and use it in GitHub Desktop.
Query Bitcoin balance by timestamp in BigQuery
WITH double_entry_book AS (
-- debits
SELECT
array_to_string(inputs.addresses, ",") as address
, inputs.type
, -inputs.value as value
FROM `bigquery-public-data.crypto_bitcoin.inputs` as inputs
UNION ALL
-- credits
SELECT
array_to_string(outputs.addresses, ",") as address
, outputs.type
, outputs.value as value
FROM `bigquery-public-data.crypto_bitcoin.outputs` as outputs
)
SELECT
address
, type
, sum(value) as balance
FROM double_entry_book
GROUP BY 1,2
ORDER BY balance DESC
LIMIT 1000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment