我想使用我的数据库通过电子邮件联系我的用户.我想确保我不会意外地联系同一个用户两次.为此,我有一张表来跟踪联系人和何时联系.
当我执行我的MYSQL查询时,我想从email表中选择电子邮件,并确保表中不存在这些条目contacted.
要在一个句子中对其进行短语:如果Email_Table中的电子邮件不在Contacted_Table中,请选择该电子邮件
也许有一种完全不同的方法.我对所有建议持开放态度:)谢谢:)
Ger*_*umm 34
试试这个
SELECT email FROM email_table e
LEFT JOIN contacted_table c ON e.email = c.email
WHERE c.email IS NULL
Run Code Online (Sandbox Code Playgroud)
Jah*_*ine 28
select email
from Email_Table t1
where not exists (select email
from Contacted_table t2
where t1.email = t2.email)
Run Code Online (Sandbox Code Playgroud)
要么
select email
from Email_Table t1
where email not in (select email
from Contacted_table)
Run Code Online (Sandbox Code Playgroud)
Sil*_*ght 11
如果您尝试像这样执行左连接:
SELECT users.email, contacted.email
FROM users LEFT JOIN contacted ON users.email = contacted.email
Run Code Online (Sandbox Code Playgroud)
你会得到类似的结果:
users.email | contacted.email
-----------------------------
aa@aa.com | aa@aa.com
bb@bb.com | bb@bb.com
cc@cc.com | cc@cc.com
dd@dd.com | NULL
ee@ee.com | NULL
Run Code Online (Sandbox Code Playgroud)
您的目标是获取contacted表中没有匹配项的记录,因此您的查询将是:
SELECT users.email
FROM users LEFT JOIN contacted ON users.email = contacted.email
WHERE contacted.email IS NULL
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13207 次 |
| 最近记录: |