我想在MySql数据库中存储以下数据(通知数据):
id: VARCHAR(10)
from_id: VARCHAR(10)
to_id: VARCHAR(10)
类型:int(2)
type_info:(本专栏的问题)
日期:时间戳
知道该列type_info
根据列的内容确定其内容,type
我有4种情况:
如果 type = 1 type_info 将为空
如果类型 = 2 类型信息 = id1
如果类型 = 3 type_info = id1/id2
如果类型 = 4 type_info = id1/id2/id3
笔记:
-id1,id2和id3是VARCHAR(10)(是评论,回复,页面的id......)
- 要提取值(id1、id2 和 id3),我在 / (PHP)上使用explode() 函数
- type_info列不需要更新其内容。我所需要的只是 INSERT 和 SELECT
-我以 gson 形式获取数据。
所以我的问题是:为了提高查询SELECT * FROM table WHERE date > dateValue
速度,我是保持表设计不变还是有更高效的设计?
如果我把Table按类型列分成4张表,是不是会更好?
通知表:
id/from_id/to_id/type/date
Type_1表:
notfication_i/id1
Type_2表:
notfication_i/id1/id2
Type_3表:
notfication_i/id1/id2/id3
注意:上面只考虑提高查询速度的最佳表设计
这样的设计合适吗?
万千封印