widgets
Postgresには次のテーブルがあります。
(そのスクリーンショットは、Excelでの大まかな表現です。)次のような単一のSQLクエリを作成しようとしています。
- 今日の
widgets
最も早いロード時間でウィジェットを表すレコード。また - 今日ロードされていない場合、
widgets
ロード時間がこれまでで最も早いもの(テーブル全体)
したがって、上の画像を使用すると、次のようになります。
- クエリは最初に、今日最初にロードされたウィジェットを返そうとします(そのようなウィジェットが存在する場合)。この場合、今日はIDが3と5003094(それぞれ)のウィジェットのみがロードされました。これら2つのうち
widget_id = 3
、他よりも早くロードされたため、これはクエリが返すレコードです。 - ただし、これら2つのウィジェットがテーブルになく、さらにウィジェットが今日ロードされていないふりをすると、クエリは
widget_id = 1
2010年にロードされたため、を返します。
クエリでの最初の試みは次のとおりです。
SELECT
MIN(w.loaded_date_time)
FROM
widgets w
WHERE
w.loaded_date_time >= now()
OR
1=1
しかし、私はこれが構文的に正しくないことをすぐに知っています。何か案は?前もって感謝します!