Php MySQL没有';不要让我删除记录
我正试图从PHP中创建这个MySQL子句Php MySQL没有';不要让我删除记录,php,mysql,Php,Mysql,我正试图从PHP中创建这个MySQL子句 $conn = new mysqli($servername, $username, $password, $dbname); $sql = "DELETE FROM table_2 WHERE id in (select DISTINCT(id) FROM table_2 WHERE id NOT IN (SELECT id FROM table_2 WHERE p = 1 AND r =1))"; if ($conn->query($sql
$conn = new mysqli($servername, $username, $password, $dbname);
$sql = "DELETE FROM table_2 WHERE id in (select DISTINCT(id) FROM table_2 WHERE id NOT IN (SELECT id FROM table_2 WHERE p = 1 AND r =1))";
if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
}
我得到以下错误
删除记录时出错:无法为指定目标表“table_2”
在FROM子句中更新
我做错了什么?您可以通过子查询绕过MySQL的这一限制,但您的语句可以简化为:
DELETE FROM table_2
WHERE id NOT IN (
SELECT id FROM (
SELECT id FROM table_2 WHERE p = 1 AND r = 1
) t
)
然后我得到这个。删除记录时出错:每个派生表都必须有自己的别名您是否忘记了别名
t
?哦,哈哈,我以为这是一个输入错误,现在我得到了这个错误:删除记录时出错:截断了不正确的双精度值:'Question1'这不是delete语句本身的错误。可能你有导致其他删除或更新的约束或触发器。这是我在整个php文件中唯一的删除/更新,其他更新我猜是插入,但它们在另一个文件中