2011-08-09 14 views
0

テーブルから2つの表の表示無関係な結果:MySQLの - 私は2つのテーブルに持って1

テーブルA:

pid|filename|date 
----------------- 
1 |file1 |2009 
2 |file2 |2009 
3 |file3 |2009 
4 |file4 |2009 

テーブルB:

pid|filename 
------------ 
1 |filex1 
1 |filex2 
2 |filex3 
2 |filex4 

私が取得したい結果次のとおりです。

pid|filename|date 
----------------- 
3 |file3 |2009 
4 |file4 |2009 

thatsはshする必要がありますなぜなら、2番目のテーブルとの関係を持たないテーブルAの行だけです。

私はこのコードを使い始めましたが、うまくいかなかったのです!

$do_q=mysql_query("SELECT * 
    FROM A LEFT JOIN B 
     ON (A.pid <> B.pid)"); 
    while($row = mysql_fetch_array($do_q)){ 
     echo $row['pid']; 
     echo $row['filename']; 
     echo $row['date']; 
    } 

ありがとうございます。私はこれがあなたのために働くべきだと思い

答えて

1
SELECT A.* 
    FROM A 
     LEFT JOIN B 
      ON A.pid = B.pid 
    WHERE b.pid IS NULL 
+0

!! – Khalid

0

:素晴らしい作品

SELECT * 
FROM A 
WHERE pid NOT IN (SELECT pid from B) 
0
SELECT 
* 
FROM tableA A 
WHERE(NOT EXISTS(SELECT 1 FROM tableB B WHERE B.pid = A.pid)) 
関連する問題