SQLでテーブル結合の重複行を停止するにはどうすればよいですか?

アムナA

チューターIDがセッションチューターIDと一致する場合にコードを変更できるように、このテーブルを結合しようとしています。ただし、生成するカレンダーには複数の結果が表示されます。

以下は現在のPHPコードですが、テーブル内に複数のチューターIDがあるため、エントリが複製されています。これを変更する方法がわかりません。

<?php
    $sqlAssignments = "SELECT * FROM tbl_assignments LEFT JOIN tbl_tutorModules ON tbl_assignments.module_code = tbl_tutorModules.module_code"; // 
    $qryAssignments = mysqli_query($con, $sqlAssignments); // running the query

    while($rowAssignment = mysqli_fetch_assoc($qryAssignments)){
        if ($_SESSION["ID"] == $rowAssignment['tutor_id']) {
            echo "{ title: '" . $rowAssignment['assignment_name'] . "', start: '" . $rowAssignment['hand_in_date'] . "', end: '" . $rowAssignment['hand_in_date'] . "', url: 'view/assignments.php?id=" . $rowAssignment['assignment_id'] . "', color: '#f1f1f1'},";
        } else {
            echo "{ title: '" . $rowAssignment['assignment_name'] . "', start: '" . $rowAssignment['hand_in_date'] . "', end: '" . $rowAssignment['hand_in_date'] . "', url: 'view/assignments.php?id=" . $rowAssignment['assignment_id'] . "'},";

        }
    }
?>

現時点での実際の結果は、tutorModulesに複数のチューターがある場合、出力はカレンダーの結果と重複することです。

ありがとう

編集:いくつかのサンプルデータを含むテーブルは次のようになります

tbl_tutorModules

con_id   module_code   tutor_id
2        ISYS30025     1
3        ISYS30025     2

tbl_assignments

assignment_id
module_code
assignment_name
assignment_weight
set_date
hand_in_date
hand_in_method
assignment_type

これが現在の出力です

期待される出力は、これらが複製されないことです。

Thorsten Kettner

特定の家庭教師が課題に関与しているかどうかを知りたい。したがって、クエリで検出できるように、チューターIDをDBMSに渡します。

SELECT
  assignment_id, assignment_name, hand_in_date,
  case when module_code in (SELECT module_code FROM tbl_tutorModules WHERE tutor_id = ?)
    then 'yes' else 'no'
  end as tutor_involved
FROM tbl_assignments
ORDER BY assignment_id;

ご覧のとおり、結合された結果には関心がないため、テーブルを結合しません。でレコードを検索したいだけですtbl_tutorModulesINまたはEXISTSSQLを使用して、別のテーブルのレコードを検索します。

mysqliでDBMSにパラメータを渡す方法はこちらをご覧ください:http://php.net/manual/en/mysqli.prepare.php

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

SQL Serverで複数のテーブルを結合するにはどうすればよいですか?

分類Dev

SQL Serverの結合で重複する列名を結合するにはどうすればよいですか?

分類Dev

SQL:結合を使用して別のテーブルから複数の行を取得するにはどうすればよいですか?(初心者の質問)

分類Dev

SQL内部結合テーブルから重複する値を削除するにはどうすればよいですか?

分類Dev

SQL Server 2012で複数のテーブルを使用してスイッチ外部結合を実行するにはどうすればよいですか?

分類Dev

symfony2で複数のテーブルを結合するにはどうすればよいですか?

分類Dev

2つのテーブルを結合するときに重複を回避するにはどうすればよいですか?

分類Dev

SQLで3つのテーブルを結合するにはどうすればよいですか

分類Dev

SQLで3つ以上のテーブルを結合するにはどうすればよいですか?

分類Dev

次のテーブルの結合操作を実行するにはどうすればよいですか?

分類Dev

テーブルから重複する行を削除し、列の値の合計を維持するにはどうすればよいですか?

分類Dev

2つのテーブルで内部結合を使用した後に複数の行を追加するにはどうすればよいですか?

分類Dev

MySQLで重複する結合テーブルレコードを削除するにはどうすればよいですか?

分類Dev

dolphindbテーブルから重複行を削除するにはどうすればよいですか?

分類Dev

データベーステーブルへの重複するユーザー名の追加を停止するにはどうすればよいですか?

分類Dev

1つのテーブルに参照がない場合、複数のテーブルを結合するにはどうすればよいですか?

分類Dev

テーブルからすべての重複を削除するにはどうすればよいですか?

分類Dev

3つのテーブルで内部結合を行うにはどうすればよいですか?

分類Dev

SQL内部結合でテーブルをバイパスするにはどうすればよいですか?

分類Dev

IDを使用して複数のSQLテーブルを結合するにはどうすればよいですか?

分類Dev

Oracleで別のテーブルと複数回結合されたテーブルを更新するにはどうすればよいですか?

分類Dev

SQLで4つのテーブルの複数の行を新しいテーブルの1つの行に結合するにはどうすればよいですか?

分類Dev

この方法で3つのテーブルを結合するにはどうすればよいですか

分類Dev

SQL同じ列を持つテーブルを結合し、結合のような統計を使用するにはどうすればよいですか?

分類Dev

結合されたテーブルの1行のみをpostgresで結合するにはどうすればよいですか?

分類Dev

SQL Server:テーブルを結合した後に一意の行を取得するにはどうすればよいですか

分類Dev

複合キーがアクセス番号と日付+/- 1日であるテーブル結合を行うにはどうすればよいですか?

分類Dev

すべての行が出力に表示されるように2つのテーブルを結合するにはどうすればよいですか?

分類Dev

SQLテーブルから特定の行を選択し、SQLサーバーで複数のテーブルを結合するにはどうすればよいですか?

Related 関連記事

  1. 1

    SQL Serverで複数のテーブルを結合するにはどうすればよいですか?

  2. 2

    SQL Serverの結合で重複する列名を結合するにはどうすればよいですか?

  3. 3

    SQL:結合を使用して別のテーブルから複数の行を取得するにはどうすればよいですか?(初心者の質問)

  4. 4

    SQL内部結合テーブルから重複する値を削除するにはどうすればよいですか?

  5. 5

    SQL Server 2012で複数のテーブルを使用してスイッチ外部結合を実行するにはどうすればよいですか?

  6. 6

    symfony2で複数のテーブルを結合するにはどうすればよいですか?

  7. 7

    2つのテーブルを結合するときに重複を回避するにはどうすればよいですか?

  8. 8

    SQLで3つのテーブルを結合するにはどうすればよいですか

  9. 9

    SQLで3つ以上のテーブルを結合するにはどうすればよいですか?

  10. 10

    次のテーブルの結合操作を実行するにはどうすればよいですか?

  11. 11

    テーブルから重複する行を削除し、列の値の合計を維持するにはどうすればよいですか?

  12. 12

    2つのテーブルで内部結合を使用した後に複数の行を追加するにはどうすればよいですか?

  13. 13

    MySQLで重複する結合テーブルレコードを削除するにはどうすればよいですか?

  14. 14

    dolphindbテーブルから重複行を削除するにはどうすればよいですか?

  15. 15

    データベーステーブルへの重複するユーザー名の追加を停止するにはどうすればよいですか?

  16. 16

    1つのテーブルに参照がない場合、複数のテーブルを結合するにはどうすればよいですか?

  17. 17

    テーブルからすべての重複を削除するにはどうすればよいですか?

  18. 18

    3つのテーブルで内部結合を行うにはどうすればよいですか?

  19. 19

    SQL内部結合でテーブルをバイパスするにはどうすればよいですか?

  20. 20

    IDを使用して複数のSQLテーブルを結合するにはどうすればよいですか?

  21. 21

    Oracleで別のテーブルと複数回結合されたテーブルを更新するにはどうすればよいですか?

  22. 22

    SQLで4つのテーブルの複数の行を新しいテーブルの1つの行に結合するにはどうすればよいですか?

  23. 23

    この方法で3つのテーブルを結合するにはどうすればよいですか

  24. 24

    SQL同じ列を持つテーブルを結合し、結合のような統計を使用するにはどうすればよいですか?

  25. 25

    結合されたテーブルの1行のみをpostgresで結合するにはどうすればよいですか?

  26. 26

    SQL Server:テーブルを結合した後に一意の行を取得するにはどうすればよいですか

  27. 27

    複合キーがアクセス番号と日付+/- 1日であるテーブル結合を行うにはどうすればよいですか?

  28. 28

    すべての行が出力に表示されるように2つのテーブルを結合するにはどうすればよいですか?

  29. 29

    SQLテーブルから特定の行を選択し、SQLサーバーで複数のテーブルを結合するにはどうすればよいですか?

ホットタグ

アーカイブ