比如 Topic 表一个回复数的字段, Reply 表有一个楼层的字段。
(我用的是 Flask Sqlchemy )
这样每次增加一条回复,查一次写两个表
t = Topic.query.get(1)
r = Reply(楼层=t.回复数+1)
t.回复数 += 1
这样可以直接用 t.回复数 在模板查询,
如果去掉这个字段,查两次写一次
t = Topic.query.get(1)
r = Reply(楼层=t.reply.count())
但是这样只能用 t.reply.count() 在模板来查了。
请问哪样好?
1
zpvip 2016-06-15 17:21:07 +08:00
时间换空间,空间换时间,另外,数据一致性问题能不能保证,要不要保证,自己想明白就好了
|
2
Neveroldmilk 2016-06-15 17:21:52 +08:00
数据库设计经常碰到这种问题,要么牺牲空间换速度,要么牺牲速度省空间。内有一概而论的答案,要看你是注重速度还是存储空间了。
|
3
petelin 2016-06-15 18:48:25 +08:00 via Android
你们倒是说说那个是时间短,那个是存储少啊,查 1 写 2 ,查 2 写 1 那个快?
|