SQLDeveloper如何使用可变日期?

时间:2019-01-24 13:38:36

标签: oracle-sqldeveloper

我必须处理按日期选择的项目。 我写道:

var test_datum varchar2(30),
exec :test_datum := '12.01.2019',

select
table1.item_nr as item,
table1.bitfeld as field,
table2.period_id as period,
table2.period_from as p_from,
table2.period_to as p_to,
to_date(:test_datum, 'DD.MM.YYYY') as start_day,
(trunc(:test_datum) - trunc(p_from)) as  delta,
--(trunc(sysdate) - trunc(p_from)) as  delta,
MOD((trunc(:test_datum) - trunc(p_from)), 4) as modulo,
floor((trunc(:test_datum) - trunc(p_from))/4) as control,
from table_one table1, table_two table2
where table2.period_from < :test_datum and table2.period_to > :test_datum

我不明白的地方:

  1. 启动查询时,即使我明确地将日期设置为(例如) 在2019年1月12日的第二行中,询问:test_datum值的框打开,我必须提供所需的值。
  2. 指定日期后,查询将在以下时间开始并立即停止 ORA-00932。 “数据类型不一致:预计NUMBER%s收到了DATE%s”
  3. 如果我将trunc(:test_datum)更改为trunc(sysdate)[当前为 注释],则查询已正确执行。

我该如何更正我的:test_datum?

(这是我的第一个问题,如果我破坏了本地礼节Thx,请纠正我)

0 个答案:

没有答案