表 my_table 是:
CREATE TABLE MY_TABLE(
ID NUMBER NOT NULL,
MY_DATE DATE NOT NULL);
键入以下查询:
select sysdate from dual
结果是:
10-MAG-12 21:22:32
请注意,mag = may。
现在,如果我输入这个查询:
select *
from my_table
where my_date <= sysdate
结果是:
9918 10-MAG-12 20:00:00
9915 10-MAG-12 21:00:00
9952 10-MAG-12 22:00:00
9951 10-MAG-12 23:00:00
请注意,在 my_table 我只有这 4 条记录。为什么我看到所有记录而不是第一条和第二条记录?谢谢。
我使用 Oracle SQL Developer。
编辑:请注意,当我使用 PL/SQL 插入记录时,我输入如下内容:
nCount NUMBER;
myDate DATE;
stringDate VARCHAR2(255);
BEGIN
nCount := 0;
stringDate := substr(to_char(trunc(sysdate)),0,9);
myDate := to_date(stringDate || ' 20:00:00','dd-mm-yyyy hh24:mi:ss');
for t in (a cursor) loop
insert into MY_TABLE(ID,MY_DATE)
values (9918,myDate+(nCount/1440));
nCount := nCount + 60;
end loop;
END;