MySQL-存储多个字段还是一个CSV字段?

MySQL-存储多个字段还是一个CSV字段?,mysql,csv,product,Mysql,Csv,Product,我有一个产品表,需要实施一个可用性系统,以便能够在工作日筛选产品(例如,产品仅在周五可用) 我不确定是否应该添加一个“availability”列,其中包含7个逗号分隔的bool值,每个值代表每个工作日,或者添加7个不同的列 我不太喜欢CSV方法,它还需要后期处理来过滤数据,但多列方法对我来说似乎是一种糟糕的做法。 我在考虑这个问题,但在一个单独的表格中,比如产品的可用性 | id | mon | tue | wed | etc... 我应该使用什么方法?多个字段 如果没有,在进行任何处理之前

我有一个产品表,需要实施一个可用性系统,以便能够在工作日筛选产品(例如,产品仅在周五可用)

我不确定是否应该添加一个“availability”列,其中包含7个逗号分隔的bool值,每个值代表每个工作日,或者添加7个不同的列

我不太喜欢CSV方法,它还需要后期处理来过滤数据,但多列方法对我来说似乎是一种糟糕的做法。 我在考虑这个问题,但在一个单独的表格中,比如产品的可用性

| id | mon | tue | wed | etc...
我应该使用什么方法?

多个字段

如果没有,在进行任何处理之前,您需要将数据提取到编程语言中。您将无法为数据编制索引


阅读数据库规范化方面的内容

您应该使用多对多表产品\u可用性:

product_id | day | availability
或一个表产品中的json字段(如果使用MySQL 5.7+)

...fields | availability 
            JSON_TYPE('{1:true, 2:false...}');