我正在处理的是我们数据库的电子邮件清理脚本。通过这样做,我们确定了一个无效,破坏或不再存在的域列表。我们通过识别域名,即@符号后的所有内容来实现此目的。
update url_links
set link_bad=1,
emailCarrier='bad-domain.com'
where contact_email like '%@bad-domain.com';
标识提供者并设置字段。问题是我们有数百个无效的域名(以上只是一个例子)
我想做的是'内部联接'到另一个名为'emailCarriers的表。我可以把它写成PHP中的一个循环,但是我想在这里询问社区是否有人在MySQL中有一个聪明的方法来做这件事。
emailCarriers表包含所有不良域运营商,因此查询将引用emailCarriers表并寻求在域名部分的子字符串上找到匹配(在@符号之后),如果匹配,那么它将执行更新并使用emailCarriers表中的相应域填写'bad-domain.com'。
谢谢!
答案 0 :(得分:1)
$http.get("url").then(function() {
$timeout(function() {
// updateDom
}, 0);
});
答案 1 :(得分:0)
您可以尝试这样的事情: -
UPDATE url_links u JOIN emailCarrier e
ON u.SUBSTRING_INDEX(url_links, '@', 1) = b.provider
SET link_bad = 1