PHP+MySQL查询指定字段时无法获取tbl_class表数据问题
问题根因
- 未在SELECT子句中声明你需要获取的tbl_class关联表字段:你仅指定了tbl_child表的字段,LEFT JOIN得到的tbl_class数据不会自动被返回
- 存在SQL语法错误:
child_age字段末尾多了多余的逗号,会导致SQL语句解析失败 - 未给字段加表别名前缀,若两表存在同名字段会触发字段歧义错误
修复后的代码
$select = $pdo->prepare(" select c.childpid, c.child_name, c.child_surname, c.child_birth, c.child_age, -- 下面是tbl_class表字段,按需保留即可 l.classpid, l.class_courseyear, l.class_course from tbl_child c LEFT JOIN (SELECT classpid,childfkey,class_courseyear,class_course FROM tbl_class where classpid IN ( SELECT MAX(classpid) FROM tbl_class GROUP BY childfkey )) l ON l.childfkey=c.childpid");
内容的提问来源于stack exchange,提问作者anubs
相关产品推荐
相关产品推荐

