因此,我正在为我的业务建立一个网络应用程序,我需要记录三件事,即项目批号和零件号,以及胶水重量。批号和零件号已完成,但我需要有一个胶水重量表,存储每小时的胶水重量的项目正在生产。基本上我是在问一个如何存储一列的多个胶水权重条目?前任。批号:12345零件号:1234批号胶重1234:1.07 2.07 1.56 1.45(等。。。生产产品所需的每小时)
csga3l581#
下面是一个粗略的例子:产品表:
id | lot_number | part_number 1 | 12345 | 1234 2 | 56789 | 5567
重量表
id | product_id | weight | date_time 1 | 1 | 1.07 | 2001-01-02 12:25:12 2 | 1 | 2.07 | 2001-01-02 13:25:12 3 | 1 | 1.56 | 2001-01-02 14:25:12 4 | 1 | 1.45 | 2001-01-02 15:25:12 5 | 2 | 1.07 | 2001-01-02 12:25:12 6 | 2 | 2.07 | 2001-01-02 13:25:12 7 | 2 | 1.56 | 2001-01-02 14:25:12 8 | 2 | 1.45 | 2001-01-02 15:25:12
在weight表中,您现在可以进行sql查询,以获得每小时的所有重量测量值。
erhoui1w2#
您可以通过多种方式在一列中为一行存储多个值;但也许有更好的解决办法。例如,如果使列能够容纳一个大字符串,则可以将数据存储为csv、制表符分隔、xml、json等。但是,通过这样存储数据,在编写sql查询时很难检查该数据。幸运的是,使数据库如此强大的原因是它们如何将数据关联在一起。在您的例子中,您希望根据批号和零件号的一个组合存储多个权重。这叫做一对多关系。您将有一个用于批号和零件号的表,其中每一行都有一个唯一的标识符(这将是该表的主键)。另一个表将存储权重,另一个表中的每一行对应一个权重。第二个表中的每一行引用第一个表中的特定行,方法是在第二个表中有一列包含第一个表的唯一标识符列中的值(这称为外键)。一旦你做到了这一点,你的数据现在是正常的。现在可以使用联接将数据组合在一起。并使用聚合来查找sum、min、max等。
2条答案
按热度按时间csga3l581#
下面是一个粗略的例子:
产品表:
重量表
在weight表中,您现在可以进行sql查询,以获得每小时的所有重量测量值。
erhoui1w2#
您可以通过多种方式在一列中为一行存储多个值;但也许有更好的解决办法。
例如,如果使列能够容纳一个大字符串,则可以将数据存储为csv、制表符分隔、xml、json等。但是,通过这样存储数据,在编写sql查询时很难检查该数据。幸运的是,使数据库如此强大的原因是它们如何将数据关联在一起。
在您的例子中,您希望根据批号和零件号的一个组合存储多个权重。这叫做一对多关系。您将有一个用于批号和零件号的表,其中每一行都有一个唯一的标识符(这将是该表的主键)。
另一个表将存储权重,另一个表中的每一行对应一个权重。第二个表中的每一行引用第一个表中的特定行,方法是在第二个表中有一列包含第一个表的唯一标识符列中的值(这称为外键)。
一旦你做到了这一点,你的数据现在是正常的。现在可以使用联接将数据组合在一起。并使用聚合来查找sum、min、max等。