以下是一个按类别查找产品的示例解决方法,使用自定义查询:
首先,创建一个包含产品类别的表。可以使用以下SQL语句创建一个名为"product_categories"的表:
CREATE TABLE product_categories (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50)
);
然后,创建一个包含产品信息的表。可以使用以下SQL语句创建一个名为"products"的表,并将产品类别作为外键:
CREATE TABLE products (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
category_id INT,
price DECIMAL(10, 2),
FOREIGN KEY (category_id) REFERENCES product_categories(id)
);
然后,向产品类别表和产品表中插入一些示例数据。可以使用以下SQL语句插入示例数据:
-- 添加产品类别
INSERT INTO product_categories (name) VALUES
('电子产品'),
('家具'),
('服装');
-- 添加产品
INSERT INTO products (name, category_id, price) VALUES
('手机', 1, 999.99),
('电视', 1, 1499.99),
('沙发', 2, 599.99),
('床', 2, 799.99),
('T恤', 3, 19.99),
('牛仔裤', 3, 29.99);
最后,创建一个自定义查询来按类别查找产品。可以使用以下代码示例来实现这个功能:
connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取产品类别列表
$categoryQuery = "SELECT * FROM product_categories";
$categoryResult = $conn->query($categoryQuery);
if ($categoryResult->num_rows > 0) {
while ($categoryRow = $categoryResult->fetch_assoc()) {
$categoryId = $categoryRow['id'];
$categoryName = $categoryRow['name'];
echo "类别: $categoryName
";
// 获取该类别下的产品
$productQuery = "SELECT * FROM products WHERE category_id = $categoryId";
$productResult = $conn->query($productQuery);
if ($productResult->num_rows > 0) {
while ($productRow = $productResult->fetch_assoc()) {
$productName = $productRow['name'];
$productPrice = $productRow['price'];
echo "产品: $productName 价格: $productPrice
";
}
} else {
echo "没有产品
";
}
echo "
";
}
} else {
echo "没有类别";
}
// 关闭数据库连接
$conn->close();
?>
这个示例代码会按类别遍历产品类别表,并在每个类别下查找相关产品。最后,将类别和产品信息输出到页面上。
请注意,上述代码中的数据库连接信息需要根据您自己的情况进行修改。
下一篇:按类别查找最小值