もう1つのSIMILARの回答がありましたが、2ページの長さです。私は2つのテーブル、tableAとtableBを持っていますが、tableAには存在するが、tableBには存在しない行のCOUNTSを見つける必要があります。また、tableBのupdate_onが今日の日付ではありません。TSQLは右テーブルから欠落している行の数を取得します
マイテーブル:
にtableA:
release_id book_name release_begin_date
----------------------------------------------------
1122 midsummer 2016-01-01
1123 fool's errand 2016-06-01
1124 midsummer 2016-04-01
1125 fool's errand 2016-08-01
TABLEB:
release_id book_name updated_on
-----------------------------------------
1122 midsummer 2016-08-17
1123 fool's errand 2016-08-16**
期待される結果:各書籍は1つのリリースIDが欠落しているので、1カウントです。しかし、テーブルBの愚かな使い方の行には、今日ではなく、昨日の日付が更新されているため、count_of_not_updatedでカウントする必要があります。
book_name count_of_missing count_of_not_updated
-------------------------------------------------------
midsummer 1 0
fool's errand 1 1
注:無駄足はTABLEBに存在しているにもかかわらず、私は日付が昨日と今日ではないですupdated_onているためcount_of_missingでそれを表示する必要があります。私はそれが左の結合と他の何かの組み合わせでなければならないことを知っていますが、ここのキッカーは、左のテーブルから欠落した行を取得するだけでなく、updated_onテーブルが今日の日付かどうかをチェックし、 count_of_not_updatedにある。
を - それはあなたが無駄足(ID 1125)のために1欠けているあなたの期待される結果かららしいです1は更新されない(1123)。しかし、あなたは欠けているとみなすには1123が必要だと言っていますか?それで、馬鹿のためのcount_of_missingコラムで2ではないでしょうか? – TPhe
@TPhe_foolの使用には1行が欠けているためcount_of_missingでは1になりますが、foolの使用のためのtableBの既存の行はtoday_count_of_not_updatedに1であるtoday_(今日)/ getdate()ではないupdated_onの日付を持ちます。 1行が欠落している行と存在する行とは異なり、今日(今日)の更新日が –
です。その場合、私は自分のクエリを編集します。あなたの質問の文章「注:愚かなことがテーブルBにあるにもかかわらず、今日は昨日であり、今日は更新されていないので、count_of_missingに表示する必要があります。 – TPhe