一个(据说)简单的更新结果并不那么简单。无论我从其他回答问题,尝试这句法,我从MySQL获得相同的响应:(S)MySQL加入更新
0行受影响的行匹配:124:0的警告:0
尝试1:
UPDATE news_content, news_map
SET news_content.active='no'
WHERE news_content.rowID = news_map.newsID
AND news_map.catID = 170;
尝试2:
UPDATE news_content
LEFT JOIN
news_map
ON news_map.newsID = news_content.rowID
SET news_content.active = 'no'
WHERE news_map.catID = 170;
尝试3:
UPDATE
news_content nc JOIN
news_map nm
ON nm.newsID = nc.rowID
AND nm.catID = 170
SET nc.active = 'no';
您认为哪些方法可行?
所有的语法都应该正常工作。你可以提供样本记录吗?再次检查值。 – 2013-02-20 13:36:01
'SELECT COUNT(*)FROM news_content nc JOIN news_map nm ON nm.newsID = nc.rowID WHERE nm.catID = 170 AND(nc.active <>'no'OR nc.active IS NULL);'返回? – 2013-02-20 15:36:47
@ypercube,它返回19 – walkerspace 2013-02-20 16:30:10