0

难以获得正确的 mysql 查找然后更新这些记录。我对两个单独的表的概念有困难。本质上,我可以通过以下方式成功地在一个表中找到记录:

  SELECT email,id  
  FROM  `phplist_user_user` 
  WHERE  `email` LIKE  '%gmail%'
  LIMIT 0 , 30

然后分别:

  SELECT userid, value FROM `phplist_user_user_attribute`

现在我不知道如何将第一个查询中找到的所有记录的“phplist_user_user_attribute”中的值更新为“gmail.com”。

4

2 回答 2

0

好吧显然看起来你不能phplist_user_user_attribute直接更新表。

您可以做的是使用嵌套查询.. 即类似 // 这只是一种方法...

Update phplist_user_user_attribute
SET your_value = 'foo'
where your_value IN (SELECT your_value  
                     FROM  `phplist_user_user` 
                     WHERE  `email` LIKE  '%gmail%'
                     LIMIT 0 , 30);
于 2012-11-17T01:05:52.743 回答
0
UPDATE phplist_user_user u
JOIN phplist_user_user_attribute a ON u.id = a.userid
SET a.value = 'gmail.com'
WHERE u.email LIKE '%gmail%'
于 2012-11-17T00:49:24.093 回答