2011-06-29 31 views
1
UPDATE sb_reviews 
SET clients_id=(SELECT clients_id 
       FROM sb_users 
       WHERE id=sb_reviews.users_id) 

sb_reviews是一个表users_id和新创建的clients_id。我试图从sb_users表中获取clients_id并将其放入sb_reviews表中,其中sb_users.id = sb_reviews.users_id此更新查询有什么问题?我得到“没有记录改变”

尽管此查询不起作用,但我没有更改记录。

+1

你真的想更新表中的所有行吗?我的代码示例中没有看到“WHERE”的存在。 ; p – Rihards

+0

经过进一步审查,我不确定是否有问题。你确定有记录要更新吗? – IAmTimCorey

回答

4

您的查询没有任何问题。

在mysql中,如果更新没有效果(即列中的值不变),它会报告为不是更新。

如果您已经运行了此操作,那么每次运行后都会收到“无记录更改”消息(除非第二张表中的数据发生更改)。

+0

谢谢,你是对的!我以为它不起作用,因为我只看到0个值,但用户表中有一堆记录的实际值为0。 –

+0

这是否意味着我得到了“接受”勾号? :) – Bohemian

+0

是的,你明白了! –