所有行我有2个表:MySQL的删除与加入
表1对每个用户1行:
ID startDate EndDate
1 09-08-2015 09-08-2015
2 09-08-2015 09-08-2015
第二个表包含每个用户的多个记录:
ID UserID data_key data_val
1 1 "email" "[email protected]"
2 1 "name" "John Brown"
3 2 "email" "[email protected]"
4 2 "name" "Tom Brady"
我没有使用innodb,因此我无法在删除时使用级联。我需要做的是从两个表中删除具有匹配ID的所有记录,其中table2.data_key = "email"
和该记录的数据_value LIKE "%@test.com%"
。因此,在这种情况下,table1 row1将与表2中用户ID为1的所有行一起被删除。到目前为止,我所有的尝试都失败了。我该如何做到这一点,谢谢!
我的最新尝试(我理解为什么它不工作,而是如何解决我丢失):
delete
table1, table2.*
from table1
INNER JOIN table2
ON table1.ID = table2.User_ID
WHERE table2.data_key = 'email'
AND table2.data_val LIKE '%stringofinterest%'
AND table1.ID = table2.User_ID
那么,布伦丹,你是否得到它的工作? – 2015-02-09 10:52:37