-1

同じ列で値が異なる2つのテーブルを結合しようとしていますが、出力するたびに重複します。

これが私のコードです:

<?php
                    $dept = $_SESSION['department'];
                  $dept1 = strtolower($dept);
                  $dept2 = str_replace(" ", "_", $dept1);
                $dept4 = "$dept2" . "_200";
                  $dept = $_SESSION['department'];
                  $level = $_SESSION['level'];
                  $level2 = str_replace (" ", "_", $level);

                  if($level ="200_level") {
                    $query = " SELECT * FROM $dept2 Join $dept4";

                    }
                    else
                    {
                    $query = " SELCT * FROM $dept2";

                    }
                  $result = mysql_query($query) or die('<div       class="header5"small_font">Your Courses are not available yet. Pls contact the ICT Unit</div>');
                      while ($row = mysql_fetch_assoc($result))  {
                        $id = $row['id'];
                   $course = htmlspecialchars($row['course_name']);
                 $code = htmlspecialchars($row['course_code']);
                   $status = $row['status'];
                   $unit = htmlspecialchars($row['unit']);   

   ?>  
4

1 に答える 1

0

同じ列を持つ2つのテーブルの内容を取得する場合は、MySQLUNIONが役立ちます。

UNIONは、複数のSELECTステートメントの結果を1つの結果セットに結合するために使用されます。

そのようです:

 $query = "(SELECT * FROM $dept2)
            UNION
           (SELECT * FROM $dept4)";
于 2012-10-23T23:06:18.593 に答える