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

如何从多值字段中筛选出被特殊字符分隔的单个数字3?

解决分隔字段中精确匹配单个值的问题

针对你的需求——筛选出Column2中包含被分隔的单独数字3的记录,避免误匹配13这类包含3的字符串,提供以下几种实用方案:

方案1:拼接分隔符后模糊匹配

通过在字段首尾拼接分隔符,让所有子项都被包裹,再用LIKE精确匹配3,确保只命中独立的3:

SELECT *
FROM YourTableName
WHERE '' + Column2 + '' LIKE '%3%'

这种方法无需拆分函数,适配所有SQL版本,逻辑简单直接。

方案2:用拆分函数精确匹配

如果你的数据库支持内置拆分函数(比如SQL Server 2016+的STRING_SPLIT),可以拆分后直接匹配值为'3'的子项,再通过DISTINCT去重(避免同一条记录因包含多个3而重复返回):

SELECT DISTINCT t.*
FROM YourTableName t
CROSS APPLY STRING_SPLIT(t.Column2, '') s
WHERE s.value = '3'

如果必须使用fn_SplitOneValue,只需替换STRING_SPLIT即可,核心是精确匹配拆分后的子项等于'3',而非模糊匹配包含3的内容。

注意事项

  • 如果Column2中的数字存储为数值类型,需注意类型转换,例如将s.value转为数值后和3比较,避免字符串匹配的潜在问题;
  • 提前清理字段中的多余空格或特殊字符,确保分隔符格式统一,避免影响匹配结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 22:16:03