TABLE1(IDSが常に存在する)3つのテーブルは、ケース内にデータが1つのテーブルに
+----+------+
| id | col1 |
+----+------+
| 1 | ab |
+----+------+
| 2 | gh |
+----+------+
表2(IDが常に存在する)
+----+------+
| id | col2 |
+----+------+
| 1 | cd |
+----+------+
| 2 | ij |
+----+------+
表3(IDSが失われるかもしれないが、欠落している、参加左この場合には)が不足している
+----+------+
| id | col3 |
+----+------+
| 1 | ef |
+----+------+
PHP
$col = 'ab';
$a = mysql_query("SELECT t1.id FROM table1 AS t1, table2 AS t2, table3 AS t3
WHERE t1.id = t2.id AND t2.id = t3.id AND (t1.col1 = '$col' OR t2.col2 = '$col'
OR t3.col3 = '$col) GROUP BY t1.id, t2.id, t3.id");
すべての3つのテーブルが含まれている「同じID」を持っていたが、「idは」表3に欠落している場合、何が何らかの理由で発生した場合にのみ動作します ? $ col = abのとき、3つのテーブルをすべてテストしてt1.idに1を出力するにはどうすればよいですか?私はに参加する必要がありますか?に参加しますか?
$a = mysql_query("SELECT t1.id FROM table1 AS t1, table2 AS t2
LEFT JOIN (SELECT id FROM table3 WHERE col3 = '$col') AS t3 ON t3.id = t1.id
WHERE t1.id = t2.id AND (t1.col1 = '$col' OR t2.col2 = '$col')
GROUP BY t1.id, t2.id");
私はここで間違っていますか?
文脈なしでは、達成したいことを理解するのは難しいです。どのデータを取得したいのですか、テーブル間の相関関係は何ですか? – jishi