mysql-我需要一些帮助来优化我的数据库架构
作者:互联网
这是我的数据的布局:
Heading 1:
Sub heading
Sub heading
Sub heading
Sub heading
Sub heading
Heading 2:
Sub heading
Sub heading
Sub heading
Sub heading
Sub heading
Heading 3:
Sub heading
Sub heading
Sub heading
Sub heading
Sub heading
Heading 4:
Sub heading
Sub heading
Sub heading
Sub heading
Sub heading
Heading 5:
Sub heading
Sub heading
Sub heading
Sub heading
Sub heading
这些标题需要具有“完成状态”布尔值,该值将链接到用户ID.
目前,这是我的表格的外观:
id | userID | field_1 | field_2 | field_3 | field_4 | etc...
-----------------------------------------------------------------------
1 | 1 | 0 | 0 | 1 | 0 |
-----------------------------------------------------------------------
2 | 2 | 1 | 0 | 1 | 1 |
每个字段代表一个子标题.在我的表中有这么多列看起来效率很低…
我该如何优化呢?我想不出什么办法来修饰它:/
解决方法:
不要使用布尔值,而要使用简单的关系:
表完成状态
id user_id field_id
1 1 3
2 2 1
3 2 3
4 2 4
...
从中很容易看到用户1完成了字段3,用户2完成了字段1、3和4.
这样,您无需在要更改字段数量时就更改数据库架构.
标签:optimization,database-design,sql,mysql 来源: https://codeday.me/bug/20191210/2098575.html