将左连接更改为基本连接
我目前有一些 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`
I currently have some SQL that should return 3 rows of data but returns 6 (3 rows repeated twice).
I believe this is down to my syntax and want to try and build the query using basic joins, currently the SQL looks like this,
`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;
}`
I want to use something like this
`WHERE `mailer_content`.id = `mailers.id`
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只需在第一次加入时将 LEFT 更改为 INNER,如
“共享并享受”中所示。
Just change the LEFT to INNER on the first join, as in
Share and enjoy.