是否有一个查询将返回主表中的所有行以及基于ID返回相关表的所有行。相关表可以具有来自主表的相同ID的多个行。 目前,我从主表中获取所有行,然后遍历该行并使用函数从相关表中获取行。这有效,但似乎并不特别有效。
即
SELECT * FROM primaryTable
AND (SELECT * FROM tableImages) as Images
AND (SELECT * FROM tblReviews) as Reviews
这需要像JSON一样输出......
{id: 1
name:"name1",
address:"address1",
reviews:{reviewID:25,review:"reviewText", reviewID:38,"reviewText2"},
images:{imageID:1234, file"file1.jpg",imageID:3456, file:"file3.jpg"},
latitude:12.3456,
longitude:34.5678
},
{id: 2
name:"name2",
address:"address2",
reviews:{reviewID:29,review:"reviewText", reviewID:57,"reviewText2"},
images:{imageID:12, file"file1.jpg",imageID:34, file:"file3.jpg"},
latitude:12.3456,
longitude:34.5678
}
答案 0 :(得分:-1)
你必须使用join,示例查询如下所示
SELECT * FROM primaryTable ptable INNER JOIN secondTable stable WHERE ptable.id = stable.id
只需将其复制到您的sql编辑器并替换为您的表格即可使用
您可以参考加入here