mysql - 单字段数组或多行

标签 mysql performance

作为这个问题的序言,我应该说我对数据库效率知之甚少,这很快就会变得非常明显。

这是一个相当简单的问题:

我想在 mysql 数据库中存储事件的出席情况。 我想到了两种可能的方法(我相信还有更多):

  1. events 表中创建一个额外的 attendance 行,包含以逗号分隔的用户 ID 列表
  2. 创建一个attendance 表,包含两列,event_iduser_id

我的直觉告诉我方法 2 是最有效的——尽管必须返回并遍历多行,但这可能比在连接字符串中搜索特定 user_id 成本更低。 ..

谁能证实这一点?

最佳答案

创建一个新表!

否则你没有利用 MySQL 的关系方面,你运行的每个查询都必须解析 csv 条目的结果(非常低效)

关于mysql - 单字段数组或多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10728010/

相关文章:

php - 修复未索引的数据库 MySQL

mysql - 选择 mysql 数据库列的子集 - 日期

mysql - 插入 MySQL 表或更新(如果存在)

时间:2019-05-01 标签:c++: dynamic number of nested for loops (without recursion)

java - 如何处理这个类的可见性问题?

performance - Hadoop yarn 单节点性能调整

php - 使用不同的字符集搜索数据库

android - Flutter:我怎样才能提高该应用程序的性能?

C# WebClient 第一次运行缓慢

mysql - 使用 CASE EXPRESSION 的列到行