私は基本的にDB内に2つのテーブルを持っていますが、希望の効果のためにこれらを一緒に結合する必要があると思う日付テーブルもあります。SQL 3つのテーブルが重複しないヌル値を保持する
FOOS
date | foos
------------------
2016-01-01 2
2016-01-02 3
2016-01-03 4
バー
date | bars
------------------
2016-01-02 9
2016-01-03 8
2016-01-04 7
日付
dates
----------
2016-01-01
2016-01-02
2016-01-03
2016-01-04
...
DES私の日付のテーブルを選択している私が現在やっている
date | bars | foos
-------------------------
2016-01-01 Null 2
2016-01-02 9 3
2016-01-03 8 4
2016-01-04 7 Null
返された値をIRED、そして日付に棒を結ぶ左、その後、日付に参加FOOSを残しました。
問題は、それは私がバーやFOOSの両方がnullの場合、日付が返されたくない私に次のような結果
date | bars | foos
-------------------------
2016-01-01 Null 2
2016-01-02 9 3
2016-01-03 8 4
2016-01-04 7 Null
2016-01-05 Null Null
2016-01-06 Null Null
2016-01-07 Null Null
...
を与えることです。私はそれがそのようにレンダリングするために取得することができますが、私はそれを選択するための最も効率的な方法だか分からない、すなわち:次のように使用して
where (bars is not null or foos is not null)
でこれを試してみてください?コードの最後の行が解決策であると私には思われます。 – HoneyBadger
私はこれを実行するのに最も効率的な方法かどうか尋ねようとしていますね。 – edumike
試してみると、パフォーマンスに問題はありますか?通常、実際に問題が発生したときにパフォーマンスを修正するのが最善です。問題がなければ、修正する必要はありません。 – HoneyBadger