知道字符串中是否有电话号码

bnlyeluc  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(409)

我有一个表格,其中有一列叫做“description”,这是一个广告的描述,我想知道有多少广告在描述中包含了卖家的电话号码。例如:“出售的汽车。丰田花冠。致电0759485102'
(所有电话号码都有10位数字)
我怎么能质疑呢?我在datagrip中使用mysql

qybjjes1

qybjjes11#

你可以用 like 谓语:

select count(*) 
from table t
where description like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]';
yzxexxkh

yzxexxkh2#

大多数数据库支持正则表达式——至少足以开始回答这个问题。你可以找一个10位数的字符串。没有办法知道这是否真的是一个电话号码(除非你在别的地方有)。
例如,在mysql中,您可以执行以下操作:

select count(*) as num_with_10digits
from t;
where description regexp '[0-9]{10}';

这个 where 子句因数据库而异,但在大多数数据库中的想法是相同的。

相关问题