Mysql 从两个表中删除(查看数据是否存在)
在一次查询中删除两个表中的数据时遇到问题。 我发现了几个类似的线程,但没有一个具有与我相同的核心问题 那么,这有什么不同呢 目标:我需要帮助,了解如何从我的Mysql 从两个表中删除(查看数据是否存在),mysql,Mysql,在一次查询中删除两个表中的数据时遇到问题。 我发现了几个类似的线程,但没有一个具有与我相同的核心问题 那么,这有什么不同呢 目标:我需要帮助,了解如何从我的项目数据库中删除所有项目数据,以及小时数据库中最终附加的所有小时数 对于我当前的查询,只有在项目和小时数据库中找到匹配项时,它才会删除。那么,我怎样才能按照上面的要求删除所有数据呢 现在,我的查询如下所示: DELETE hours, projects FROM hours INNER JOIN projects WHERE hours
项目
数据库中删除所有项目数据,以及小时
数据库中最终附加的所有小时数
对于我当前的查询,只有在项目
和小时
数据库中找到匹配项时,它才会删除。那么,我怎样才能按照上面的要求删除所有数据呢
现在,我的查询如下所示:
DELETE hours, projects
FROM hours
INNER JOIN projects
WHERE hours.projecthours_id= projects.project_id and hours.projecthours_id = ".$mysqli->real_escape_string($_GET['id']).";
这是我的两个表(示例数据和表):
尝试左外部联接而不是内部联接,然后
其中
转到上的
试试这个
DELETE hours, projects
FROM hours
LEFT OUTER JOIN projects on hours.projecthours_id= projects.project_id
WHERE hours.projecthours_id = ".$mysqli->real_escape_string($_GET['id']).";
尝试左外部联接而不是内部联接,然后其中
转到
上的
试试这个
DELETE hours, projects
FROM hours
LEFT OUTER JOIN projects on hours.projecthours_id= projects.project_id
WHERE hours.projecthours_id = ".$mysqli->real_escape_string($_GET['id']).";
- 使用
左连接
而不是内部连接
- 另外,您的
where
条件应为项目.project\u id
而不是小时.projecthours\u id
,因为您正试图从项目
表中删除所有项目
尝试:
- 使用
左连接
而不是内部连接
- 另外,您的
where
条件应为项目.project\u id
而不是小时.projecthours\u id
,因为您正试图从项目
表中删除所有项目
尝试:
一个问题都没能解决。
因此,将它们作为两个独立的对象
$query = "DELETE FROM hours WHERE hours.projecthours_id = ".$mysqli->real_escape_string($_GET['id'])."";
$mysqli->query($query);
$query = "DELETE FROM projects WHERE projects.project_id = ".$mysqli->real_escape_string($_GET['id'])."";
一个问题都没能解决。
因此,将它们作为两个独立的对象
$query = "DELETE FROM hours WHERE hours.projecthours_id = ".$mysqli->real_escape_string($_GET['id'])."";
$mysqli->query($query);
$query = "DELETE FROM projects WHERE projects.project_id = ".$mysqli->real_escape_string($_GET['id'])."";