为了账号安全,请及时绑定邮箱和手机立即绑定

添加WHERE子句后sql不起作用

添加WHERE子句后sql不起作用

PHP
叮当猫咪 2023-11-03 21:24:40
我有以下查询: $stmt = $conn->query("SELECT * FROM research as r LEFT JOIN research_participants as rp ON rp.research_no = r.id LEFT JOIN researcher as rc ON rc.id = rp.researcher_id where r.id = $researchid");这个查询工作得很好,但是,我希望它只选择状态=“完成”的研究,所以我将其更改为以下内容:$stmt = $conn->query("SELECT * FROM research WHERE status= 'done' as r LEFT JOIN researcher as rp ON r.researcher_id = rp.id");不幸的是,它不起作用。我还尝试了以下方法: $stmt = $conn->query("SELECT * FROM research as r LEFT JOIN researcher as rp ON r.researcher_id = rp.id WHERE status= 'done'");但即使这样也行不通。研究表如下所示: 在此处输入图像描述
查看完整描述

2 回答

?
墨色风雨

TA贡献1853条经验 获得超6个赞

我相信 WHERE 子句需要放在 JOIN 之后,如下所示:

$stmt = $conn->query("SELECT * FROM research AS r LEFT JOIN researcher AS rp ON r.researcher_id = rp.id WHERE r.status= 'done'");


查看完整回答
反对 回复 2023-11-03
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

如果您在使用“where”的两个表上具有相同的列名称,那么它将是不明确的。

print_r($result);

要查看输出,请不要查看其显示的错误。


查看完整回答
反对 回复 2023-11-03
  • 2 回答
  • 0 关注
  • 124 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信