2012-04-09 7 views
2

私はforeginキー 'ID'によって結合された2つのテーブルを持っています:LEFT JOINの空白に0を設定しますか?

テーブルAはID、MONTH、VOTESとテーブルB ID、MONTH、OTHER_VOTESを持っています。

テーブルAとテーブルBは期待通りに投票します。すべての時間に両方の種類の投票があるわけではありません。

私はLEFT JOINにBとAしたいので、OTHER_VOTESが存在しない(何も空でない)何ヶ月間も空のセルの代わりに0が得られるようにします。

これは可能ですか?

ありがとうございます!

答えて

6

確かです。列を選択する場合は、IFNULL(OTHER_VOTES, 0)を使用します。

+0

自分の好奇心の中で、これは 'COALESCE(OTHER_VOTES、0)'と同じですか、 'IFNULL(OTHER_VOTES、0)'はこのシナリオでうまくいきますか? 'COALESCE'がほぼ同じことをするならば、' IFNULL'機能がなぜ存在するのかを理解しようとしています。 – Travesty3

+0

coalesceは、null可能性のある任意の数の値を受け入れ、最初の非NULL値を選択します。あなたが唯一のフィールド/値をヌルネスのためにチェックしているなら、IF()を使います。 –