簡體   English   中英

是否可以使用PHP PDO從第一張表中的列從第二張表中獲取數據?

[英]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語句的返回值。

tblparentsSELECT語句在同一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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM