我必须创建一个php文件,它将从mysql数据库中删除一些行 .
对于第一个版本,我有三个表:category_description,product_to_category和product_description .
如果产品属于笔记本电脑或手机等特定类别,我必须从product_description表中删除这些产品 .
问题是该表只有product_id和product_name列 .
product_to_category表包含product_id和category_id .
category_description表具有category_id和category_name列 .
问题是我需要编写一个php代码,该函数将如下 .
检查category_description表中category_name列中的给定类别名称(例如:smartphone) . 如果找到它,则使用category_id列中的值数字(如234),并将其与product_to_category表中可以找到的category_id进行比较 . 如果找到它,则从product_id列使用属于if的数据,并在product_description表的product_id列中进行检查 . 如果匹配则删除给定的行 .
为此,我必须编写一个php / sql代码 . 我不知道这可以用这种形式完成 .
到目前为止我所做的是数据库连接和给定类别名称的category_id的定位,如下所示:
$sql = "SELECT category_id FROM category_description WHERE name = 'smartphone'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "ID: " . $row["category_id"]. "<br>";
$data[]=array('ID' =>$row["category_id"]);
print_r ($data);
}
} else {
echo "Not found";
}
2 回答
您可以将
DELETE
与JOIN
一起使用,如下所示:这段代码可以帮助我思考