You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Snowflake的users视图提取邮箱格式用户并生成指定JSON格式?

解决方案:通过Account Usage视图实现需求

完全可以实现你的需求,用Snowflake的SNOWFLAKE.ACCOUNT_USAGE.USERS视图就能解决SHOW USERS;的所有局限,具体SQL如下:

-- 生成指定结构的JSON结果,每个元素为{"email": "邮箱地址"}
SELECT ARRAY_AGG(OBJECT_CONSTRUCT('email', NAME)) AS user_emails_json
FROM SNOWFLAKE.ACCOUNT_USAGE.USERS
WHERE NAME LIKE '%@%';

关键说明:

  • 选择单个字段:直接从视图中选取NAME列即可,无需处理SHOW命令返回的冗余字段
  • 筛选邮箱格式:用WHERE NAME LIKE '%@%'过滤包含@的有效邮箱地址
  • 生成JSON:
    • OBJECT_CONSTRUCT('email', NAME) 将每个邮箱包装成指定的键值对结构
    • ARRAY_AGG() 将所有结果聚合为一个JSON数组,方便直接导出或使用

权限注意事项:

执行前确保当前角色拥有SNOWFLAKE.ACCOUNT_USAGE.USERS视图的查询权限,如果没有,需要账号管理员执行授权:

GRANT SELECT ON SNOWFLAKE.ACCOUNT_USAGE.USERS TO ROLE <你的角色名称>;

内容的提问来源于stack exchange,提问作者SnowflakeDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 21:45:28