Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL更新更新所有行?_Php_Mysql_Database - Fatal编程技术网

Php MySQL更新更新所有行?

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”,而不仅仅是它找不到值的列

我正在尝试创建一个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 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]谢谢大家的帮助