连接两个不工作的表

v64noz0r  于 2021-06-21  发布在  Mysql
关注(0)|答案(3)|浏览(269)

我有一个sql语句,见下文。我不知道怎样才能放进另一张table。我试过一些方法,但都是错误的。我需要的是显示两个表中的项目。它们是两张分开的table,唯一的共同点是两张table上的日期。
有人能帮我吗?

$value = $_GET['id']; 
             $dbQuery = $conn->prepare("SELECT * FROM Appointment INNER JOIN Results WHERE Date=:value");
             $dbParams = array(':value'=>$value);
             $dbQuery->execute($dbParams);
mgdq6dx1

mgdq6dx11#

您需要使用on来传递两个表

SELECT * FROM Appointment as a
INNER JOIN Results as r
ON a.Date = r.Date
WHERE r.Date=:value

https://www.w3schools.com/sql/sql_join_inner.asp

cngwdvgl

cngwdvgl2#

您的代码缺少用于加入的on运算符。另一个问题是您没有指定 Date 在你的条件下使用。这在代码上没有太大区别,但下面的代码片段应该可以解决连接的问题,有关连接的更多信息,请访问以下链接

$value = $_GET['id']; 
$dbQuery = $conn->prepare("SELECT * FROM Appointment INNER JOIN Results ON Appointment.Date = Results.Date WHERE Results.Date=':value'");
$dbParams = array(':value'=>$value);
$dbQuery->execute($dbParams);
66bbxpm5

66bbxpm53#

如果查询中的多个表共用一个或多个字段名,则这些字段名必须用表名限定(如果有表,则用表的别名限定)。
另外,您的查询缺少联接条件,因此如果指定了appoints.date(单独),则该日期的每个约会都将与来自 results table。

相关问题