WITH
duplicates AS (
SELECT
EVENT_DATA:templateId AS templateId,
EVENT_DATA:mintNumber AS serialNumber,
EVENT_DATA:nftId AS nftId,
tx_id,
block_timestamp,
ROW_NUMBER() OVER (
PARTITION BY
EVENT_DATA:templateId,
EVENT_DATA:mintNumber
ORDER BY
BLOCK_TIMESTAMP
) AS row_num
FROM
flow.core.fact_events
WHERE
EVENT_CONTRACT LIKE '%AFL%'
AND EVENT_TYPE = 'NFTMinted'
AND TX_SUCCEEDED = 'TRUE'
AND BLOCK_HEIGHT > 47565880
)
SELECT
ARRAY_AGG(nftId) AS duplicateNftIds
FROM
(
SELECT DISTINCT
nftId
FROM
duplicates
WHERE
row_num > 1
) subquery;