通过使用另一个表更新表

mb1987

我有一个表Email,其中有一个列Email,其中包含所有电子邮件,还有一个表peronaldomains,其中有一个列,其中domains包含所有域

我想更新Email表中的列,无论域与表中的匹配的电子邮件,email_type_id我都想更新email_type_id = 2domainspersonaldomains

eg abcd.abc.comefgh.abc.comghik.abc.comEmailemail表中有abc.comdomainspersonaldomains

email表大约有600万行,personaldomains表有1213行。

我正在使用mysql

我用来创建personaldomains的查询

create table personaldomains
SELECT RIGHT(Email, CHAR_LENGTH(RTRIM(Email)) - Locate('@', Email)) Domains ,
COUNT(Email) EmailCount
FROM   email
WHERE  email_type_id = 2 and
CHAR_LENGTH(RTRIM(Email)) > 0
GROUP BY RIGHT(Email, CHAR_LENGTH(RTRIM(Email)) - Locate('@', Email))
ORDER BY EmailCount desc 
GolezTrol

由于您已经有此表达式:

RIGHT(Email, CHAR_LENGTH(RTRIM(Email)) - Locate('@', Email))

我觉得有点像

UPDATE email e
SET e.email_type_id = 2
WHERE
  EXISTS (
    SELECT 'x' 
    FROM personaldomains pd 
    WHERE pd.domain = 
      RIGHT(e.Email, CHAR_LENGTH(RTRIM(e.Email)) - Locate('@', e.Email)))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

oracle proc通过dblink使用另一个表更新一个表

来自分类Dev

使用另一个表更新表

来自分类Dev

如何使用另一个表更新表

来自分类Dev

使用另一个表的值更新表

来自分类Dev

使用另一个查询的结果更新表

来自分类Dev

使用Case语句更新另一个表

来自分类Dev

更新另一个表时更新表

来自分类Dev

插入一个表并使用shellscript更新另一个表

来自分类Dev

使用重复键从另一个表更新一个表

来自分类Dev

使用另一个表中的值更新一个表上的列

来自分类Dev

通过联接另一个表来更新MySQL表

来自分类Dev

通过从另一个表获取最大值来更新表

来自分类Dev

通过计算另一个表的结果来更新表

来自分类Dev

SQL:从另一个分组表更新表

来自分类Dev

POSTGIS-从另一个表更新表

来自分类Dev

从另一个表更新表中的记录

来自分类Dev

从另一个表更新某些字段的表

来自分类Dev

SQL:从另一个分组表更新表

来自分类Dev

POSTGIS-从另一个表更新表

来自分类Dev

sql从另一个表snappydata更新表

来自分类Dev

使用 tablediff.exe 比较两个表并更新另一个表

来自分类Dev

使用VBA使用来自另一个表的值更新访问表

来自分类Dev

使用withRelated通过另一个联接表联接表

来自分类Dev

使用withRelated通过另一个联接表联接表

来自分类Dev

Postgresql-使用特定数据更新一个表后如何更新另一个表

来自分类Dev

如何通过使用该值查找另一个表来更新SQL中的值?

来自分类Dev

使用alembic获取表值并更新到另一个表。

来自分类Dev

每天使用另一个表中的值更新sql表

来自分类Dev

使用另一个表的聚合有效地更新表