MySQL 数据库 统计 表设计问题

比如一个帖子有转发、评论、赞、踩等
这个应该是在帖子表里面有一个总数,还是直接另外一个表,用户转发一次添加一条记录,然后需要的时候来统计?
sqlDROPTABLEIFEXISTS`tz_tz`;
CREATETABLE`tz_tz`(
`id`int(10)unsignedNOTNULLAUTO_INCREMENT,
`title`varchar(255)NOTNULLDEFAULT'',
`description`text,
`category_id`varchar(255)DEFAULT'',
`created_at`int(10)unsignedNOTNULLDEFAULT'0',
`updated_at`int(10)unsignedNOTNULLDEFAULT'0',
`like_count`bigint(20)unsignedNOTNULLDEFAULT'0',
`comment_count`bigint(20)unsignedNOTNULLDEFAULT'0',
`repin_count`bigint(20)unsignedNOTNULLDEFAULT'0',
PRIMARYKEY(`id`)
)ENGINE=InnoDBAUTO_INCREMENT=15DEFAULTCHARSET=utf8;
白猪掌柜的
浏览 1034回答 2
2回答

翻过高山走不出你

个人觉得统计用的字段要放到另外一张表中,这样符合数据库设计规范,另外,统计的数更新可以在mysql中加触发器,每次操作更新count

慕虎7371278

首先每次显示这些总数都去查表count一下不太合理,我建议这些字段还是需要单独记录。记录的方式看你对数据统计的实时性要求高不高高的话每次操作完就更改不高的话可以定期定时任务统计一下比如一小时、一天等。至于是否放在一张表,看你是否经常用到这些数据,如果不是经常需要跟随这个帖子用到,一般还是分开比较好。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript