2017-07-04 20 views
1

2つのテーブルにクエリをキャストしたいが、結果セットには最初のテーブルのすべての結果のみが表示され、しかし、リンクされた情報がたくさんあるので、最後にリンクされた情報が必要です。例えば2つのテーブルのSQLクエリで2番目のテーブルの結果セットを無視

表1

id_t1 | number | type 
1  555  file 
2  666  img 

表2

id_t2 | id_table1_fk | date_in | description 
1  1    04/07  aaaaaaa 
2  1    05/07  bbbbbbb 

クエリ

id_t1 | number | type | date_in | description 
1  555  file  05/07  bbbbbbb 
2  666  img  null  null 
+1

左外部結合 –

+1

@Jonathan Leiteへのスタックオーバーフローへようこそ。おそらくそれはフォーマットだけですが、あなたが提供したサンプルデータを理解できません。いくつかのサンプルデータと目的の結果を列として(コードとして)書式設定すると、質問に対する回答がより明確になる場合があります。これまでに試したことや、結果に何が間違っているかを提示することもできます。 – Degan

+1

この種の質問をするときは、テストのセットアップに必要なDDLとDMLを提供することをお勧めします。このような情報を使用すると、より正確な回答が得られ、より迅速に回答を得ることができます。 – jeff6times7

答えて

0

これを試してみてください:

SELECT 
    t1.*, 
    new_t2.date_in, 
    new_t2.description 

FROM 
    t1, 
    ( SELECT * 
     FROM t2 
     WHERE id_table1_fk = t1.id_t1 
     ORDER BY id_t2 DESC 
     LIMIT 1 
    ) AS new_t2 
0
select table1.*, table2.date_in, table2.description 
from table1 left outer join table2 on table1.id_t1 = table2.id_table1_fk 
+0

これは期待どおりに機能しません。 1対1の関係を持つ表を結合するので、table2の結果を集計する必要があります。そうしないと、SQLエンジンは結果を切り捨てますが、期待どおりに切り捨てることはできません。また、SQLエンジンまでクエリの動作を残しています... –

関連する問題