マージの目的を誤解していると思います。
あなたのテーブルは次のようなものになると思います:
CREATE TABLE TABLE_FOR_TESTS (
d DATE,
t NUMBER(8),
CONSTRAINT TABLE_FOR_TESTS_PK PRIMARY KEY (d)
)
次に、マージステートメントは次のようになります。
MERGE INTO TABLE_FOR_TESTS t
USING (SELECT trunc(sysdate) d FROM DUAL) s
ON (s.d = t.d)
WHEN MATCHED THEN
UPDATE SET t = t+1
WHEN NOT MATCHED THEN
INSERT (d, t) VALUES (trunc(sysdate), 1)
ここで、結合はテーブルの主キー上にあり、そのPK値のレコードが存在するかどうかに応じて更新または挿入します。
これには、1日あたり最大1つのレコードがあり、tは1日あたりのこのステートメントの実行数を保持します(TABLE_FOR_TESTSに他のDMLがないと仮定します)。
注:sysdate自体には、時間コンポーネントが含まれています。 trunc(sysdate)はそれを削除し、時刻を00:00:00に設定します。