簡體   English   中英

使用外鍵從其他表中獲取數據

[英]Get data from other table with foreign key

每個cursus有一個cursussoort連接外鍵我有2個表。 我試圖從cursussoort表中獲取數據以顯示在while循環中。 cursussoort_ID顯示的ID是顯而易見的,但是如何從cursussoort表中獲取'naam'?

表

<?php
$result = mysqli_query($con, "SELECT * FROM cursus WHERE cursussoort_ID = 1 ORDER BY begindatum ASC");
while ($cursus = mysqli_fetch_array($result)) {
?>
<div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
  <div class="post-preview">
      <h2 class="post-title">
        <?php echo $cursus['cursussoort_ID'];?>
        <?php echo $cursus['begindatum'] . "<br />";?>

      </h2>
      <h3 class="post-subtitle">
        <?php echo $cursus['beschrijving'] . "<br />";?>
      </h3>
  </div>
</div>
<?php } ?>

你應該JOIN在SQL語句從2個表連接數據:

SELECT c.*, cs.* FROM cursus c 
INNER JOIN cs.cursussoort ON c.cursussoort_ID = cs.ID 
WHERE c.cursussoort_ID = 1 
ORDER BY begindatum ASC

然后你可以用HTML顯示它:

<?php
$result = mysqli_query($con, "SELECT c.*, cs.* FROM cursus c INNER JOIN cs.cursussoort ON c.cursussoort_ID = cs.ID WHERE c.cursussoort_ID = 1 ORDER BY begindatum ASC");
while ($cursus = mysqli_fetch_array($result)) {
?>
<div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
  <div class="post-preview">
      <h2 class="post-title">
        <?php echo $cursus['cursussoort_ID']; ?>
        <?php echo $cursus['naam']; ?><br />
        <?php echo $cursus['begindatum']; ?><br />
      </h2>
      <h3 class="post-subtitle">
        <?php echo $cursus['beschrijving']; ?><br />
      </h3>
  </div>
</div>
<?php } ?>

在表之間執行JOIN

SELECT c.* 
FROM cursus c
JOIN  cursussoort cr ON c.ID = cr.cursussoort_ID
WHERE c.cursussoort_ID = 1 
ORDER BY c.begindatum

嘗試左外連接

主查詢是

`SELECT * FROM cursus c LEFT OUTER JOIN cursussoort cr ON (c.cursussoort_ID = cr.id)  WHERE cursussoort_ID = 1 ORDER BY c.begindatum ASC`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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