付费视频,请购买课程( ¥2,000.00 )后再观看

Vibecoding: Dune 查询NFT持仓与归属

4次播放
1天前

视频 AI 总结:

本节课围绕 NFT 仪表板作业展开,重点讲解如何基于 ERC721 转账数据计算某地址持有的 NFT 数量,以及如何确定每个 tokenId 的当前持有人。视频介绍了两种查询思路:一是将转入和转出记录做加一减一后汇总统计;二是按 tokenId 分组,并按区块时间和索引倒序排序,取最新一条记录作为最终 owner。前者效率更高,后者更适合追踪单个 NFT 的归属。

关键信息:

  1. NFT 仪表板查询逻辑与 Token 仪表板类似,但 ERC721 与 ERC20 的统计方式不同。
  2. ERC20 转账通常按 amount 统计;NFT 因为一次只转一个,所以转出记为 -1,转入记为 +1。
  3. 第一种方法是把转入转出记录 Union 后做求和统计,可快速得到每个地址持有的 NFT 数量。
  4. 第二种方法是按 tokenId 分组后排序,并对每组记录做 rank,取 rank=1 的最新记录确定当前 owner。
  5. 若需求是统计“某地址持有多少 NFT”,第一种方法更高效,因为无需分组排序。
  6. 若需求是追踪“某个 tokenId 当前属于谁”,第二种方法更合适。
  7. totalHolder 的计算可以基于 owner 做 count。
  8. 查询时可通过合约地址过滤项目数据,得到特定 NFT 项目的统计结果。
  9. 课程强调:做面板本身不难,核心在于先把底层查询逻辑设计正确。