Php MySQL更新更新所有行?
我正在尝试创建一个sql查询,该查询将检查一个表,如果它在另一个表中找不到具有相同id的行,那么它将修改原始表中的一个字段Php MySQL更新更新所有行?,php,mysql,database,Php,Mysql,Database,我正在尝试创建一个sql查询,该查询将检查一个表,如果它在另一个表中找不到具有相同id的行,那么它将修改原始表中的一个字段 UPDATE book SET reserved = 'N' WHERE not exists ( SELECT * FROM reservedbooks WHERE book = $row[bookID] 我在php的一个循环中运行它,$row[bookID]表示所有的图书ID。我的问题是,当它找到匹配项时,它会将所有“保留”列的值设置为“N”,而不仅仅是它找不到值的列
UPDATE book SET reserved = 'N' WHERE not exists ( SELECT * FROM reservedbooks WHERE book = $row[bookID]
我在php的一个循环中运行它,$row[bookID]表示所有的图书ID。我的问题是,当它找到匹配项时,它会将所有“保留”列的值设置为“N”,而不仅仅是它找不到值的列
任何帮助都将不胜感激:请使用此:
UPDATE book SET reserved = 'N' WHERE id not in ( SELECT id FROM reservedbooks WHERE book = $row[bookID]
您需要在更新中添加WHERE子句来指定书idah OK is chaining WHERE与在末尾添加另一个WHERE一样简单?不确定应该在那里表示什么id,是分配给id num的php变量吗?只需点击此处,就会出现错误:“字段列表”中的未知列“id”更新图书集保留=“N”如果不存在,请从保留的图书中选择*,其中book=$row[bookID]和bookID=$row[bookID]谢谢大家的帮助