2011-08-28 13 views

答えて

39

あなたは「表2から1列を選択」を意味すると仮定すると:

SELECT table1.*, table2.first_name 
    FROM table1 
LEFT JOIN table2 
... 
+0

正確に。そして、今まで誰も言及していない、明示的な方が良いです。それだけではなく、いいえ、これは私が何を意味するのかではありません、これは感謝ロットNullUserException :) – glglgl

+0

グレートを、というのは、TABLE1にはFIRST_NAMEがない、希望の列を一覧表示した方が良いですが、私はちょうど必要table2のfirst_name。あなたの答えをありがとう:) –

1

あなたはすでに述べたクエリに加えて、意味するか:

SELECT * FROM table1 
LEFT JOIN table2 
ON table1.id = table2.table1_id 
WHERE table1.id = 1 and table1.first_name = table2.first_name 
+0

、私が望んでいる「すべて」 –

0

受け入れ答えが正解でありますTABLE1があると仮定すると

:テーブルが2つの異なるデータベースにある場合、私は奇妙なエラーが発生しましたdatabase1にあり、table2はdatabase2にあります。 は当初、私はこれを試してみました:

SELECT *, database2.table2.first_name FROM table1 
LEFT JOIN database2.table2 
ON database1.table1.id = database2.table2.table1_id 
WHERE table1.id = 1 

奇妙なことは、私はPHP PDOからこのクエリをしようとするとそこにはエラーがなかったが、結果はdatabase2.table2(予想のみFIRST_NAME列)からすべての列が含まれていることです。

しかし、私はphpMyAdminのから同じクエリがsintaxエラーを得た試みている場合:

テーブル「database2.table1は」だから、

を存在する、のためにそれを解決するため、すべてのデータベースは必要ありません。このように明示的に指定される

SELECT database1.table1.*, database2.table2.first_name FROM database1.table1 
LEFT JOIN database2.table2 
ON database1.table1.id = database2.table2.table1_id 
WHERE database1.table1.id = 1 
関連する問題