mysql - 设计复杂的 SQL 结构

标签 mysql sql database data-structures

我必须设计一个相当复杂的 SQL 结构。

我正在制作一个产品分配面板,您可以在其中从公司订购电子烟液体。

每种液体都有自己的容量、尼古丁毫克数、名称和品牌。 我想让管理面板易于使用。管理员只需添加具有名称和品牌的产品,然后添加容量和功率(尼古丁)。

我正在考虑制作一个包含产品(品牌和名称)的主表,然后是包含容量和功率的表,但当我想到它时,这是一个非常糟糕的主意......还在表中制作一列power,然后将一组幂作为字符串,例如 10mg、20mg、18mg 将是一个错误。

我应该怎么做?

最佳答案

根据新的要求,我认为最好有如图所示的数据库架构。

DB SCHEMA

您有products 表和volumespowersnicotine 表。 如果 product 表中的产品具有容量、功率或尼古丁,则在相应的表中会有一条具有相关 Product_id 的记录。

一个品牌可能有多种产品,每种产品可能含有或不含尼古丁、能量或体积属性。例如,如果产品具有nicotine属性,那么在nicotine表中就有一 strip 有该product_id的记录。如果不是,nicotine 表将不包含具有此 product_id 的记录。同样的规则适用于powersvolumes

关于mysql - 设计复杂的 SQL 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36809471/

相关文章:

mysql - 从 MySQL 切换到 Oracle 会不会很困难?

mysql - 在 MySQL 中用 GROUP BY 求和和减法

MySQL 检查是否存在多行

mysql - 如何为父用户建模

sql - 使用 python pymssql 将二进制文件插入 MSSQL db (varbinary)

c# - 使用 Linq to SQL 将 C# 对象与 Varbinary 相互转换

php - 像google一样的数据库搜索

php - 使用权重因子对多列查询结果进行归一化排序

php - 我想使用 MySQL XAMPP 通过 SQL 查询获取 100,000 条记录并保存在数组中,但它甚至没有获取 16,000 条记录并停止或显示

mysql - SQL GROUP BY 和 HAVING 问题