仅通过sql查询是否可能进行以下操作,还是需要创建一个php例程?
我有一个包含gmail地址的成员数据库,其中大多数包含1个或多个“。”。“ @”之前的地址中的(点)
为了阻止重复/多次注册,我创建了一个新列,其中将包含“干净”的gmail地址,以便我可以进行新注册的比较。
示例...我有以下行,其中以下gmail地址在gmail眼中实际上都是相同的。
[email protected]
[email protected]
[email protected]
[email protected]
我知道replace()可以简单地将某物替换为某物,但是我想替换@之前的所有点。
是否可以使用sql函数/语句清除@之前的所有点,还是必须创建一个php例程才能实现此目的?
试试这个:
select concat(replace(substring(email, 1, locate('@', email)-1), '.', '') , substring(email, locate('@', email), length(email)))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句