>我在mysql中有一列,混合了IP地址和电子邮件地址。 是否有可以将字符串标识为 IP 地址的 MySQL 函数?
如果没有,您还会推荐哪些其他方法?
问候
J
你可以在 mysql 查询中使用 REGEXP
因此,要仅从列中选择IP地址,您可以写入
从表名称中选择 *,其中列名 REGEXP '^[0-9]+\。[0-9]+\.[0-9]+\.[0-9]+$';
例
select * from value1 where newValue REGEXP '^[0-9]+.[0-9]+.[0-9]+.[0-9]+$';
使用 LOCATE 函数。此 SELECT 将带来所有没有 @ 的内容。
SELECT * FROM table WHERE LOCATE ('@', field)=0;
由于电子邮件必须包含"@"而 IP 不能,因此您可以像这样选择它们:
select c from t where c not like '%@%';