PHP和MySQL
这是一个现有项目,其设计和表布局都很差。已要求添加新的“功能”。
我想知道是否可以将这样的查询组合在一起(对于查询而言不是最大的问题)
快速摘要:
形成一个表单发布。
[如果有新帖子。.以上再次发生。.
如果对现有帖子发表“评论”。
不幸的是,所有这些都在同一张表中。并且似乎可以在多张表布局中更好地使用它?
但是:
我如何获得查询,以及对诸如以下内容进行分组/订购:
并先按父post_date的顺序排序,然后按子/评论发布(按其post_date排序的子顺序)
这里是示例表设置:
http://sqlfiddle.com/#!9/19dae/2/0
不确定在这里是否需要简单的GROUP BY?还是需要进行更高级的子选择?
该顺序需要先由父帖子“ post_date”完成,然后(以某种方式)在查询/数组返回中的“父”帖子之后获得要注入的下一个子/评论帖子。 >
这是我想要的结果顺序:
期望的结果:
'2020-03-30 09:48:50', 'Poster A', '49203-30032020094850000000', '' '2020-03-30 09:50:50', 'Poster B', '49204-30032020095050000000', '49203-30032020094850000000' '2020-04-03 09:55:50', 'Poster C', '49205-03042020095550000000', '49203-30032020094850000000' '2020-03-31 09:48:50', 'Poster C', '49205-31032020094850000000', '' '2020-04-03 09:40:50', 'Poster B', '49204-03042020094050000000', '49206-010432020094850000000' '2020-04-01 09:48:50', 'Poster D', '49206-010432020094850000000', '' '2020-04-02 09:49:50', 'Poster E', '49207-02042020094950000000', ''
PHP和MySQL,这是一个现有项目,其设计和表布局不佳..已被要求添加新的“功能”。我想知道是否可以将这样的查询放在一起(不是...
您可以使用以下事实来“作弊”:除非存在父帖子,否则无法发表评论,因此,SELECT * FROM table ORDER BY messageid, postdate
会根据您的意愿将帖子后跟评论进行分组,但不一定保证帖子组按时间顺序排列。 (尽管如果按顺序分配messageid,则很可能是这种情况。)