我正在开发一个显示人物帖子的Android应用程序,一个帖子可以像facebook帖子那样拥有多个图片。起初我以为我可以在我的帖子表中有一个图像列,如
| id | title | description | image |
但后来意识到这不是一个好技术,因为一个帖子可以容纳多个图像,计划B是有一个单独的表来保存所有图像路径所以表格就像
| id | postFk | imagePath |
,使用这种技术的问题是;如何同时获取帖子和图片?一个正常的连接失败,不是真的,它的拉动数据,但我有所有这些重复和重复,任何人处理类似的问题?
答案 0 :(得分:0)
使用左连接。下面的示例查询
SELECT * FROM post_table AS u LEFT JOIN post_photo AS p ON p.userid = u.id
答案 1 :(得分:0)
在处理查询结果时,您应自行过滤掉相乘的帖子行。您想要将结果转换为像
这样的数据结构$posts = [
[
'title' => 'lorem',
'description' => 'ipsum',
'images' => [image1, image2,...],
],
[another post]
]
或者您可以使用为您完成该工作的ORM,例如Doctrine ORM。
顺便说一句,您的查询仅选择至少一个图片的帖子。如果帖子也没有图像,请使用LEFT JOIN。