MySQL-存储数组并基于值进行搜索

MySQL-存储数组并基于值进行搜索,mysql,arrays,sqldatatypes,Mysql,Arrays,Sqldatatypes,我有一个活动提要模块,在其中存储有多个成员的公司中发生的活动。根据用户的角色,这些活动通常是特定于用户的。因此,我希望将活动应显示给的用户存储在表列中,以便在获取活动时,不必查询与该活动相关联的用户,这将减慢数据检索过程 既然MySQL没有数组数据类型,那么哪种方法是最好的呢 现在我有 activities(id, category, action, date) activity_users(id, activity_id, user_id) 这是否更容易查询基于特定类型用户的活动,这些用户要

我有一个活动提要模块,在其中存储有多个成员的公司中发生的活动。根据用户的角色,这些活动通常是特定于用户的。因此,我希望将活动应显示给的用户存储在表列中,以便在获取活动时,不必查询与该活动相关联的用户,这将减慢数据检索过程

既然MySQL没有数组数据类型,那么哪种方法是最好的呢

现在我有

activities(id, category, action, date)
activity_users(id, activity_id, user_id)

这是否更容易查询基于特定类型用户的活动,这些用户要添加一列
users
和一个数组
[1,3,5,8]
,并尝试从
activities
表中查询,如果
中的代码是,您可以使用serialize()/unserialize()但是,如果需要序列化数据的任何特定内容(您必须获取全部、取消序列化,然后才能执行搜索),您不能对该字段进行查询,或者您可以以逗号分隔的方式保存数据(您可以对该字段执行任何查询),或者您可以为每个数据获取seprate字段

我可以对逗号分隔的存储进行查询吗?像搜索查询吗?或者有另一个表本身有意义吗?可以对逗号分隔的字段使用find_in_set mysql函数