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

PostgreSQL中筛选Ident列非8位纯数字行的方法

PostgreSQL筛选非8位纯数字的行

需求明确:从表中筛选出Ident列不符合恰好8位纯数字的所有行,包括含非数字字符、空格、数字位数不足8位或超过8位的行,仅排除示例里ID5这种严格8位纯数字的行。

你之前用的正则表达式是匹配各类数字格式(含小数、科学计数法),完全不符合需求,正确写法应该用精准匹配8位纯数字的正则:

SELECT * FROM your_table_name WHERE ident !~ '^[0-9]{8}$';

或者更易读的写法:

SELECT * FROM your_table_name WHERE NOT (ident ~ '^[0-9]{8}$');

正则说明:

  • ^:匹配字符串开头
  • [0-9]{8}:匹配恰好8个数字字符
  • $:匹配字符串结尾

执行这条语句后,会返回示例表中ID1、2、3、4、6的行,ID5的行被排除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 12:58:55