1. Общие инструкции
1. «0» в адресе контракта или адресе кошелька по умолчанию заменяется в таблице на «\».
Например, адрес 0x9b22a80d5c7b3374a05b446081f97d0a34079e7f.
Фактически сохраненные данные: \x9b22a80d5c7b3374a05b446081f97d0a34079e7f.
А. Если вы хотите ввести переменные в SQL, вы можете использовать следующую обработку, чтобы избежать ввода странных форматов с помощью '\':
Wallet_address = CONCAT('\x', substring('{<!-- -->{wallet_address}}' from 3))::bytea
б. При отображении определенного поля для внешнего мира вы можете преобразовать его в строку, а затем использовать замену (этот метод немного глупый, может быть, есть метод получше).
replace(cast(wallet_address как varchar),'\','0')
2. По умолчанию используется время UTC. Если вы хотите преобразовать его в UTC+8, вы можете обработать его в SQL.
block_time + '8 часов'::интервал
3. Самый быстрый способ ознакомиться с таблицей — найти несколько фрагментов данных и сравнить их в etherscan.Большую часть данных в таблице можно найти в записях, соответствующих tx_hash в etherscan.
2. Часто используемые библиотечные таблицы
1. Журнал внутрисетевой передачи
Эфириум.Транзакции
A. Структура таблицы и образцы данных

Б. Соответствующие данные в etherscan

C. Сопутствующие инструкции
Все записи транзакций, связанные с кошельком, включая информацию, связанную с газом: использованный газ, цена на газ и т. д.
Поле хеша относится к tx_hash.
2. Таблица информации о токене ERC20.
erc20.токены
A. Структура таблицы и образцы данных

Б. Соответствующие данные в etherscan

C. Сопутствующие инструкции
Таблица, в которой хранится основная информация о токенах ERC20. Обычно используется для получения символа в соответствии с контрактом токена или десятичными числами токена.
Плохо то, что эта таблица обновляется вручную. Многие мелкие монеты или новые монеты здесь не могут быть найдены. Я не уверен насчет конкретного механизма обновления вручную. Интересно, оптимизирует ли чиновник его позже.
3.Журнал передачи токенов ERC20
erc20.ERC20_evt_Transfer
A. Структура таблицы и образцы данных

Б. Соответствующие данные в etherscan

C. Сопутствующие инструкции
Таблица, принадлежащая базовому журналу, в котором фиксируется статус передачи всех токенов ERC20 в истории кошелька. Теоретически эта таблица может вычислять все данные, связанные с балансом токенов ERC20 кошелька.
Токены, переданные через Flashbot, не будут засчитаны (похоже, эта часть транзакции не проходит через логи Ethereum)
Значение: в поле «Значение» хранится необработанное значение, которое необходимо обработать с помощью десятичных дробей.
Значение/степень (10, десятичное число). Десятичные знаки каждого токена необходимо брать из таблицы erc20.tokens, но эта таблица не является полной, как будет обсуждаться позже.
Contract_address: адрес контракта ERC20.
4. Таблица баланса токенов ERC20
erc20.view_token_balances_latest: последний баланс токенов ERC20 для всех адресов, частота обновления неизвестна erc20.view_token_balances_hourly: последний баланс токенов ERC20 для всех адресов, почасовой уровень erc20.view_token_balances_daily: последний баланс токенов ERC20 для всех адресов, день- уровень erc20.token_balances: никогда не использовался, доступен в официальном документе.
A. Структура таблицы и образцы данных

Б. Соответствующие данные в etherscan

C. Сопутствующие инструкции
Таблица баланса выглядит как таблица, полученная на основе данных erc20.ERC20_evt_Transfer.Согласно статистике, основанной на разных часах и днях, рассчитывается количество каждой валюты, хранящейся в долларах США.
Если вы просто подсчитываете балансы, не применяя более сложную настраиваемую логику, теоретически эта таблица может удовлетворить большинство потребностей.
Проблема с этой таблицей заключается в том, что эквивалентная сумма многих новых монет или нишевых монет в долларах США пуста. Предполагается, что для расчета суммы в долларах США необходимы десятичные дроби, но таблица erc20.tokens обновляется вручную, и даже если десятичные дроби не могут быть быть получен. Если баланс не отображается, соответствующая сумма не может быть отображена или цена, соответствующая Токену, не может быть получена.
4. Прайс-лист токенов
4.1 Цена токена Cex
цены.доллары США

B. Сопутствующие инструкции
Данные о цене токена Cex, минутный уровень
4.2 Цена токена Dex
dex.view_token_prices
A. Структура таблицы и образцы данных

B. Сопутствующие инструкции
Данные о цене токена Dex, минутный уровень
Данные в этой таблице кажутся не очень полными.Если вы не можете найти какие-либо токены, вы можете использовать dex.trades для их расчета самостоятельно.
Подробную информацию о расчете цены токена см. в официальном документе: https://docs.dune.xyz/about/tutorials/queries/price-queries#centralized-exchange-price-data.
5. Журнал транзакций Dex
dex.trades
A. Структура таблицы и образцы данных

Б. Соответствующие данные в etherscan

C. Сопутствующие инструкции
Хранит журнал транзакций токенов dex. Каждый фрагмент данных представляет транзакцию, произошедшую в токене dex X A → токене Y B.
проект: протоколы, используемые для транзакций Uniswap, Sushi и т. д.
версия: версия протокола, Uniswap v2, Uniswap v3 и т. д.
6. Связанные с Uniswap
6.1 Журнал создания нового пула
uniswap_v2.Factory_evt_PairCreated
A. Структура таблицы и образцы данных

B. Сопутствующие инструкции
Хранит журнал, созданный новым пулом unswap.
token0 token1: двусторонний договор пула
пара: адрес контракта пула
evt_block_time: время создания пула
6.2 Журнал подробностей транзакций
uniswap_v2.Pair_evt_Swap
A. Структура таблицы и образцы данных
B. Сопутствующие инструкции
Журнал деталей транзакций uni. На основании этого также можно рассчитать цену токена.
7. Журналы, связанные с NFT
erc721."ERC721_evt_Transfer"
A. Структура таблицы и образцы данных

Б. Соответствующие данные в etherscan

C. Сопутствующие инструкции
Это очень похоже на таблицу ERC20.
Транзакции, исходящие из адресов «черных дыр», таких как 0x0000000, должны быть отличными.