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

如何编写WHERE语句查询cfmesg字段中含数字加连字符的数据?

筛选含“数字-”格式数据的WHERE语句写法

要定位cfmesg字段中包含数字紧跟连字符的数据,可根据你使用的数据库类型选择对应的WHERE语句:

1. MySQL/MariaDB

使用REGEXP操作符匹配正则模式:

SELECT * FROM your_table 
WHERE cfmesg REGEXP '[0-9]-';

如果需要确保字段内容完全由“数字+连字符”交替组成(匹配你给出的示例格式),可使用更严格的正则:

SELECT * FROM your_table 
WHERE cfmesg REGEXP '^[0-9]+(-[0-9]+)+$';

2. PostgreSQL

使用~操作符进行正则匹配:

SELECT * FROM your_table 
WHERE cfmesg ~ '[0-9]-';

严格匹配示例格式的语句:

SELECT * FROM your_table 
WHERE cfmesg ~ '^[0-9]+(-[0-9]+)+$';

3. SQL Server

使用PATINDEX函数定位匹配位置:

SELECT * FROM your_table 
WHERE PATINDEX('%[0-9]-%', cfmesg) > 0;

严格匹配示例格式的语句:

SELECT * FROM your_table 
WHERE PATINDEX('^[0-9]%(-[0-9]+)+$', cfmesg) > 0;

说明

  • 基础语句仅确保字段中存在至少一处“数字+连字符”的组合;
  • 严格匹配的正则则限制字段必须以数字开头,之后是至少一组“连字符+数字”的结构,完全符合你给出的087-2-1-11、56-080这类示例数据的格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 12:40:30