我想过滤产品的基础上的价格,品牌,类别。但它们都不是必需的。因此,用户只需根据价格或价格和品牌对产品进行过滤。如何在mySQL中使用仅使用查询编写此命令。我已经搜索了很多,但是在存储过程的帮助下找到了解决方案。
如果我编写这个查询select * from product where brandid = 1 AND price = 10 and categoryid = 5。它将获得两个符合where条款的产品。
但是如果用户不想根据品牌(让我们说)过滤产品,那么查询b将是什么呢?select * from product where brandid = null AND price = 10
假设我有一个有4个表的数据库:
个人电脑、笔记本电脑、平板电脑、智能手机
这些表中的每一列都包含以下列:
id,品牌,型号
如何使用单个查询来根据用户键入的品牌或模型从所有表中显示所有结果?在psuedo代码中,如下所示:
SELECT *
FROM {all tables}
WHERE {brand or model} LIKE %user_search%;
这样用户就可以通过键入品牌或型号来搜索任何设备。输入苹果将显示所有的苹果智能手机和平板电脑。输入型号将显示所有具有该型号的设备,甚至是来自不同品牌的设备。