SELECT ph.* FROM photos p LEFT JOIN entries e ON e.id=ph.post_id WHERE e.userid="'.$userid.'" AND ph.type="image" '.$start.' ORDER BY e.id DESC, ph.id DESC LIMIT 10
where $start = "AND ph.id<"'.$previousphoto.'"'
每个博客条目(e)可以附加一张(或多张)照片(ph)。我正在制作一个页面,只显示博客条目中的照片,每页/照片分成10张照片。
此MYSQl查询的问题最好在以下情况中描述:
10篇博客文章 - 博客帖子附带的照片数量
发布10 - 附上2张照片
Post 09 - 附上3张照片
发布08 - 附上3张照片
发布07 - 附上3张照片
发布06 - 附上2张照片
发布05 - 附上1张照片
发布04 - 附上1张照片
发布03 - 附上1张照片
发布02 - 附上1张照片
发布01 - 附上1张照片
这10篇博客文章及其使用上述查询的相应图片会产生以下输出,格式为 [博客帖子x照片#博客帖子内
第1页(每页最多10张照片):
[10x2] [10x1]
[09x3] [09x2]
[09x1] [08x3]
[08x2] [08x1]
[06x2] [06x1] //帖子6? 7号邮件的照片去哪了?
第2页(每页最多10张照片)
[05x1] [04x1]
[03x1] [02x1]
[01x1]
显然缺少来自Post 7的3张照片 - 因为它们(如果包括在内)将导致第1页上返回11张照片(而不是10张的限制)。
理想情况下,需要在第1页上返回的内容是来自第7篇的照片中的2张,而另一张照片应该显示在第2页上 - 而不是所有这些照片都不包括在内。
有关如何修复此SQL查询的任何想法?
由于