MajorM111REF_v1 list les event pour chaque signature
Updated 2024-12-15
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
›
⌄
WITH contracts AS (
-- Étape 1 : Sélection des contrats pertinents
SELECT
t1.address AS contract_address
FROM
avalanche.core.dim_contracts t1
ORDER BY
t1.created_block_number DESC
LIMIT 2000000
),
filtered_events AS (
-- Étape 2 : Filtrer tous les événements associés aux contrats pertinents
SELECT
t1.block_number,
t1.block_timestamp,
t1.tx_hash,
t1.event_index,
t1.event_name,
t1.decoded_log,
t1.contract_address
FROM
avalanche.core.fact_decoded_event_logs t1
WHERE
LOWER(t1.contract_address) IN (
SELECT LOWER(contract_address) FROM contracts -- Inclure les contrats pertinents
)
AND t1.tx_hash = '0x913d3688363d1bcc49489840662e21481becbbe91967dc7ef662d060adfcedc4' -- Filtrer sur le tx_hash cible
)
-- Étape 3 : Regrouper les événements par transaction
SELECT
MIN(t1.block_number) AS block_number, -- Numéro du bloc
MIN(t1.block_timestamp) AS block_timestamp, -- Timestamp du bloc
t1.tx_hash, -- Hash de la transaction
LISTAGG(DISTINCT t1.contract_address, ', ') WITHIN GROUP (ORDER BY t1.contract_address) AS contract_addresses, -- Regroupe les adresses de contrats
LISTAGG(t1.event_name, ', ') WITHIN GROUP (ORDER BY t1.event_index) AS event_names, -- Regroupe les noms d'événements dans l'ordre
LISTAGG(TO_JSON(t1.decoded_log), ', ') WITHIN GROUP (ORDER BY t1.event_index) AS decoded_logs -- Regroupe les logs décodés sous forme JSON
QueryRunArchived: QueryRun has been archived