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

Teradata中筛选不含字母数字的姓名需使用何种函数?

在Teradata中筛选不含字母或数字的姓名

你要筛选的是Name列里完全不包含字母(A-Z、a-z)和数字(0-9)的记录,对应示例中Flag=1的行。在Teradata里可以用正则表达式函数实现,以下是两种常用写法:

方法一:使用REGEXP_INSTR

SELECT Name, Flag
FROM your_table_name
WHERE REGEXP_INSTR(Name, '[A-Za-z0-9]') = 0;
  • REGEXP_INSTR会查找Name中匹配[A-Za-z0-9](所有字母和数字)的子串位置:
    • 找到匹配项时返回大于0的位置值
    • 完全没找到时返回0,正好对应我们要筛选的结果

方法二:使用REGEXP_SIMILAR

SELECT Name, Flag
FROM your_table_name
WHERE NOT REGEXP_SIMILAR(Name, '.*[A-Za-z0-9].*');
  • REGEXP_SIMILAR用来判断字符串是否匹配指定正则:
    • .*[A-Za-z0-9].*表示字符串中存在任意字母或数字
    • 加上NOT就表示排除所有含字母/数字的记录,留下符合要求的行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 02:20:14