Mysql 如何创建用于存储产品搜索筛选器的数据库架构
我正在创建一个简单的产品搜索webapp,用户可以根据价格、免费送货、姓名、店铺等筛选他收藏的购物产品 我期待实现自定义搜索过滤器功能,用户可以创建一个搜索过滤器,然后保存它供以后使用。搜索筛选器如下所示:Mysql 如何创建用于存储产品搜索筛选器的数据库架构,mysql,database-design,Mysql,Database Design,我正在创建一个简单的产品搜索webapp,用户可以根据价格、免费送货、姓名、店铺等筛选他收藏的购物产品 我期待实现自定义搜索过滤器功能,用户可以创建一个搜索过滤器,然后保存它供以后使用。搜索筛选器如下所示: CREATE TABLE store ( id INT NOT NULL PRIMARY KEY, name VARCHAR(100) ); 价格低于1000美元 价格在1000美元到2000美元之间 免费送货/不提供 商店是亚马逊/沃尔玛/ 名称包含“圣诞节” 有人能告诉我一个在数据
CREATE TABLE store (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(100)
);
- 价格低于1000美元
- 价格在1000美元到2000美元之间
- 免费送货/不提供
- 商店是亚马逊/沃尔玛/
- 名称包含“圣诞节”
- 字段(价格、名称、免费送货)
- 价值(1000)
- expr(小于、大于)
- 介于(1000)之间
- 和(2000年)
- 包含
CREATE TABLE store (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(100)
);
示例行:(1,“亚马逊”),(2,“沃尔玛”)
示例行:(1,43,“亚马逊圣诞节”,10001999,1,True,“圣诞节”)
上面的示例将保存一个名为“amazon christmas”的过滤器,该过滤器与用户43关联。它指定用户希望在沃尔玛寻找价格从1000美元到1999美元不等、免费送货且包含关键字“圣诞节”的产品。仅需注意此答案,您需要将表指定为INNODB,而不是MyISAM的默认值。从他们的声明中可以看出,“在稍后的阶段,MyISAM表也将实现外键约束。”在过去8年左右的时间里,所有版本都使用了相同的文本。此外,即使使用INNODB,也不能保证外键也会被遵守。众所周知,MySQL有时会忽略外键。谢谢Peter,我没有意识到这个限制。