Pau*_*ett 1 t-sql sql-server phone-number
我需要在我的数据库中识别包含电话号码的记录,以便我可以将它们发送给联系人团队.
示例:tblData
给定此表结构,查询可能是:
SELECT * FROM tblData WHERE comment [HeresWhereINeedHelp]
Run Code Online (Sandbox Code Playgroud)
评论可能(并且可能会)包含各种其他数据.一个示例评论:
是的,我有一个糟糕的经历.我希望有人在111.222.3333给我打电话.谢谢.
包含此评论的记录应在查询中提取,因为它包含电话号码.
我尝试了一个扩展的SPROC,它启用了正则表达式搜索,但性能非常糟糕.该系统是SQL Server 2012.
非常感谢任何方向.
小智 5
你应该看看LIKE
运营商.在你的情况下,你可能会去做一些事情
WHERE comment LIKE '%[0-9][0-9][0-9]_[0-9][0-9][0-9]_[0-9][0-9][0-9][0-9]%'
Run Code Online (Sandbox Code Playgroud)
由于您在字符串中的任何位置进行搜索,因此处理大型数据集也需要很长时间 - 您可能要尝试的另一个选项是在输入电话号码时检查注释字段,然后使用标记来标记该行像ContainsPhoneNumber (bit).
这样的列,您可以索引该列并执行更快的查找.