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

SQL技术问询:如何统计表中Countries列内number=后带数字的记录

统计包含"number="且其后紧跟数字的记录

要统计Countries列中包含子串"number="且后面紧跟数字的记录,替换原来的LIKE语句为正则匹配即可,最终SQL如下:

SELECT COUNT(Countries)
FROM NameOfTable
WHERE Countries RLIKE '.*number=[0-9]+.*';

关键说明:

  • 原语句LIKE '%number=%'会匹配所有含"number="的字符串,无法排除"number="后非数字的情况。
  • RLIKE(部分数据库如MySQL支持,部分数据库使用REGEXP作为正则匹配关键字)的规则解析:
    • .* 匹配任意长度的任意字符
    • number= 精准匹配目标子串
    • [0-9]+ 匹配1个及以上数字(+确保至少有一个数字存在)
    • 整个表达式确保字符串任意位置存在"number="后跟数字的结构

如果需要兼容小数(比如示例里的0.9),可以把正则修改为.*number=[0-9]+(\.[0-9]+)?.*,这样整数和小数格式的数字都能匹配到。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 22:58:14