我知道这是一个非常愚蠢的问题,并且可以在互联网上找到它,但如果你们都不介意,我仍然希望有人指出我的查询中的问题。我正在使用单个查询从多个表中删除,我在两个表中没有任何外键..
这是两个表的表结构
表 1:dt_my_domain
|----------|----------------|
| username | domain_email |
|----------|----------------|
和
表 2:dt_my_contact
|----------|-------|----------------|------------------|--------|
| user | email | contact_person | contact_email | type |
|----------|-------|----------------|------------------|--------|
现在,表 dt_my_domain 将用户名作为主键, 并且domain_email 是唯一的。
类似地,在表 dt_my_contact 中,电子邮件是唯一的。
我想根据domain_email和email从两个表中删除,这样当两者匹配时,相应的元组就会从两个表中删除
这是我正在运行的查询,
DELETE FROM dt_my_domain, dt_my_contact
USING dt_my_domain
INNER JOIN dt_my_contact USING(email)
WHERE dt_my_domain.domain_email = 'saswat.saz.routroy@gmail.com'
所以,它给出了数据库错误
Unknown column 'email' in 'from clause'
现在我如何通过我的查询解决这个问题,我想调试或这个查询的问题
最佳答案
DELETE d,c FROM dt_my_domain d inner join dt_my_contact c
on d.domain_email = c.email
WHERE d.domain_email = 'saswat.saz.routroy@gmail.com'
关于mysql - 在 MySQL 中使用单个查询从多个表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11825648/