その通りです— SQLでは、欠落しているデータを簡単に特定することはできません。通常の手法は、完全なシーケンスに対して(ギャップを使用して)シーケンスを結合し、データに対応するパートナーがない状態で、後者のシーケンスでそれらの要素を選択することです。
したがって、@BenHoffsteinの
それ以外の場合は、整数テーブル
。 integersを想定 テーブルには列iがあります 少なくとも0〜13の数値で、テーブルにdatestampという名前の日付列があること :
SELECT candidate_date AS missing
FROM (SELECT CURRENT_DATE + INTERVAL i DAY AS candidate_date
FROM integers
WHERE i < 14) AS next_two_weeks
LEFT JOIN my_table ON candidate_date = datestamp
WHERE datestamp is NULL;