[英]How to select data of 2nd table from column values of 1st table in same select statement?
[英]Is it possible to get data from the 2nd table using column in 1st table using PHP PDO?
好吧,我有一种情况,我需要一次从两个表中SELECT
数据。 但是我的主要问题是,当我在WHERE clause
中需要的值在table1的SELECT
语句的返回值中时,如何在table2中SELECT .. WHERE
。
test.php的
<?php
include("../../connection.php");
$data = json_decode(file_get_contents("php://input"));
$id= $data->id;
try{
$db->exec("SET CHARACTER SET utf8");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "
SELECT * FROM tblstudents WHERE studID=':id';
SELECT * FROM tblparents WHERE studNumber=':studNumber';
";
$statement = $db->prepare($sql);
$statement->bindValue(":id", $id);
$statement->bindValue(":studNumber", $studNumber);
$result = $statement->execute();
echo json_encode($result);
}
catch(PDOException $e) {
echo $e->getMessage();
}
?>
studNumber
值在tblstudents
,它将具有SELECT
语句的返回值。
当tblparents
的SELECT
语句在同一sql query
时,是否有可能在SELECT
语句的返回值中获得studNumber
值? 还是有另一种方法?
希望我能清楚地说明我的情况。
您需要使用JOIN
从多个表中获取数据。 试试这个查询:
$sql = "SELECT * FROM tblstudents JOIN tblparents on
tblstudents.studNumber = tblparents.studNumber WHERE tblstudents.studID=:id;"
$statement = $db->prepare($sql);
$statement->bindValue(":id", $id);
$result = $statement->execute();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.