Oracle中日期如何判断的

瞪谁谁蛋疼 2012-08-31 09:42:41
如何在IF里判断当前时间大于早上7点并且小于晚上7点。
...全文
201 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cutebear2008 2012-08-31
  • 打赏
  • 举报
回复
select (case when to_char(sysdate,'hh24') between '7' and '19' then 1 else 0 end) time01 from dual;
fw0124 2012-08-31
  • 打赏
  • 举报
回复
有两种做法:

begin
if (sysdate between (trunc(sysdate)+7/24) and (trunc(sysdate)+19/24)) then
dbms_output.put_line('between 7.am and 7.pm');
end if;
end;

begin
if (to_number(to_char(sysdate, 'hh24')) between 7 and 19) then
dbms_output.put_line('between 7.am and 7.pm');
end if;
end;
xpingping 2012-08-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
说话要负责任,to_char(sysdate,'hh')<=19)是24小时制吗,自己没有验证过的东西最好不要拿来祸害别人。
[/Quote]
谢谢提醒……
不过我只是给的我那局限的想法,没说是标准答案……只是提供一个想法而已。这也要扼杀???
bjliuzg 2012-08-31
  • 打赏
  • 举报
回复
说话要负责任,to_char(sysdate,'hh')<=19)是24小时制吗,自己没有验证过的东西最好不要拿来祸害别人。
xpingping 2012-08-31
  • 打赏
  • 举报
回复
if((to_char(sysdate,'hh')>=7 and to_char(sysdate,'hh')<=19) then
end if;
小飛不想飛 2012-08-31
  • 打赏
  • 举报
回复

if(to_date(to_char(sysdate,'hh24:mi:ss'),'hh24:mi:ss')>to_date('07:00:00','hh24:mi:ss') and to_date(to_char(sysdate,'hh24:mi:ss'),'hh24:mi:ss')<to_date('19:00:00','hh24:mi:ss')) then

end if;

3,499

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧