要实现嵌套评论,只要在表里加一个parent_id字段即可,添加评论的时候很方便,不过显示起来就会慢/麻烦一点。其实只要在表里再添加一个字段,就可以高效/快速的显示评论了,这个字段就是thread。看一下SQL构造语句
CREATE TABLE IF NOT EXISTS `comments` ( `id` int(11) NOT NULL AUTO_INCREMENT, `parent_id` int(11) NOT NULL, `topic_id` int(11) NOT NULL, `user_id` int(11) NOT NULL, `username` varchar(64) NOT NULL, `created` int(11) NOT NULL, `changed` int(11) NOT NULL, `status` int(11) NOT NULL, `content` text NOT NULL, `thread` varchar(30) NOT NULL, PRIMARY KEY (`id`), ) ENGINE=MyISAM DEFAULT CHARSET=utf8; |
thread类似这样
//存储在thread字段中的数据类似下面 // 01/ // 01.01/ // 01.02/ // 01.0a/ // 02/ 加上’/’是为了保证按thread排序后,01在子thread的前面,因为’/’的ascii值大于’.’ |
这样查询时直接下面的SQL就行了
SELECT * FROM `comments` WHERE topic_id = 1 ORDER BY thread |
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
表征数据库性能问题的三个指标
即使数据库结构定义和SQL代码编写非常完美,应用程序性能都可能下降。如果性能问题不能得到及时纠正,那么就可能为公司带来很大的损失。
-
大数据时代我们是否还需要数据库设计?
良好的数据库设计是系统和应用程序设计的一部分。很多的业务需求,如数据可用性,清理处理,还有应用性能都可以利用特定的数据库设计加以解决。
-
数据库设计需做好前期工作 Agile方法不适合
有很多企业认为数据建模以及设计良好的数据库是浪费时间的工作,对此专家的回答很直接:决不能忽视数据库设计过程。
-
理解什么是数据库规范化(Normalisation)
规范化(Normalization)是数据库系统设计中非常重要的一个技术。数据库规范化能够让数据库设计者更好地了解组织内部当前的数据结构。