我目前有一些SQL应返回3行数据但返回6(3行重复两次)。
我认为这取决于我的语法,并希望尝试使用基本联接构建查询,目前SQL看起来像这样,
`function getMultiContentById($id) {
$query = "SELECT
FROM `mailers`
LEFT JOIN `mailer_content` ON `mailers`.`id` = `mailer_content`.`mailer_id`
LEFT JOIN `mailer_images` ON `mailer_content`.`id` = `mailer_images`.`content_id`
WHERE `mailers`.`id` = $id"
$result = runSelectArray($query, __FUNCTION__);
return $result;
}`
我想用这样的东西
`WHERE `mailer_content`.id = `mailers.id`
答案 0 :(得分:1)
只需在第一次加入时将LEFT更改为INNER,如
$query = "SELECT
FROM `mailers`
INNER JOIN `mailer_content` ON `mailers`.`id` = `mailer_content`.`mailer_id`
LEFT JOIN `mailer_images` ON `mailer_content`.`id` = `mailer_images`.`content_id`
WHERE `mailers`.`id` = $id"
$result = runSelectArray($query, __FUNCTION__);
return $result;
分享并享受。