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

如何在Google BigQuery中按@分隔符拆分电子邮件列

邮箱字段按@拆分为两列的实现方案

以下是不同场景下的常用实现方法:

SQL实现

MySQL

SELECT 
  邮箱字段,
  SUBSTRING_INDEX(邮箱字段, '@', 1) AS 用户名,
  SUBSTRING_INDEX(邮箱字段, '@', -1) AS 邮箱域名
FROM 你的表名;

PostgreSQL

SELECT 
  邮箱字段,
  SPLIT_PART(邮箱字段, '@', 1) AS 用户名,
  SPLIT_PART(邮箱字段, '@', 2) AS 邮箱域名
FROM 你的表名;

SQL Server(2016及以上版本)

SELECT 
  邮箱字段,
  LEFT(邮箱字段, CHARINDEX('@', 邮箱字段) - 1) AS 用户名,
  RIGHT(邮箱字段, LEN(邮箱字段) - CHARINDEX('@', 邮箱字段)) AS 邮箱域名
FROM 你的表名;

Oracle

SELECT 
  邮箱字段,
  SUBSTR(邮箱字段, 1, INSTR(邮箱字段, '@') - 1) AS 用户名,
  SUBSTR(邮箱字段, INSTR(邮箱字段, '@') + 1) AS 邮箱域名
FROM 你的表名;

Excel实现

  • 用户名公式:=LEFT(A2,FIND("@",A2)-1)(A2为邮箱所在单元格)
  • 域名公式:=RIGHT(A2,LEN(A2)-FIND("@",A2))
    也可以直接使用「数据」选项卡的「分列」功能,自定义分隔符输入@即可批量拆分。

Python Pandas实现

import pandas as pd
df[['用户名', '邮箱域名']] = df['邮箱字段'].str.split('@', expand=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 00:36:05