curdateが今日...
curdateのタイプであるすべてのエントリが必要timestampです。もちろん、Google でこれを検索しましたが、間違ったキーワードを使用したと思います。
select * from ftt.element fee, ftt.plan p
where p.id=ftt.p_id and curdate ???
order by p_id, curdate desc;
提供していただけますか?
SYSDATEOracle の現在の日付と時刻を返します。DATE列には、Oracle の時間部分も含まれます。TIMESTAMP列も同様です。
「今日」を確認するには、両方の値の時間部分を削除する必要があります。
select *
from ftt.element fee
join ftt.plan p on p.id=ftt.p_id
where trunc(curdate) = trunc(sysdate)
order by p_id, curdate desc;
また、句JOIN内の暗黙的な結合の代わりに明示的な s を使用することに慣れる必要があります。WHERE
異なるタイムゾーンに注意する必要がある場合 (たとえば が であるためcurdate) 、代わりに (タイムゾーンを含む)timestamp with time zoneを使用することをお勧めします。CURRENT_TIMESTAMPSYSDATE
基本的な日機能があります。ここにいくつかあります:
getDate()
Now()
お使いの DBMS を知らなければ、具体的にどの DBMS が機能するかはわかりません
これまでに行ったことはすべて非常に面倒です!!!!上記のクエリからわかることは、2つのテーブルを結合しようとしているということです。まず、2 つのテーブルを結合します。
Select * from table1 join table2 on table1.id = table2.id;
このクエリに任意の条件を含めるには、上記のクエリの後にこれを連結します。
Select * from table1 join table2 on table1.id = table2.id where curdate = date;
ここで date = CURDATE(); を定義します。クエリを実行する前に。それがあなたを助けることを願っています。