日期:2014-05-16  浏览次数:20513 次

oracle-时间处理
select * from TBDAYLOGGER where trunc(COLLECTTIME)
between trunc(sysdate)-2 and trunc(sysdate)-2;

select * from TBDAYLOGGER where COLLECTTIME > sysdate-2;

select * from TBDAYLOGGER where trunc(COLLECTTIME)>=trunc(sysdate-2);

select * from TBDAYLOGGER where COLLECTTIME >= to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd');

to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');

to_date('" createTime "','yyyy-mm-dd hh24:mi:ss');  



1、oracle中 SQL 的是要查出某日期字段t_upd_tm值是当天的记录,where过滤条件该怎么写?


法一:可用oracle的trunc()函数将DATE类型字段的时间部分截掉,即时间部分变成 00:00:00:

select t_upd_tm,sysdate,(t_upd_tm-sysdate),trunc(t_upd_tm),trunc(sysdate) from tb_edr_boat where trunc(t_upd_tm)=trunc(sysdate)

而SQL Server中常通过getdate() 和convert函数可以得到日期,不要时间:



to_date('2008-8-17','YYYY-MM-DD')    to_char ( (sysdate)    , 'yyyy-mm-dd hh24:mi:ss'  )

1、        继承了HibernateDaoSupport类的类获取session时,已不可用SessionFactory.OpenSessioon的形式来获取Session了,由于HibernateDaoSupport本身已有获取session的方法getSession(),所以直接用Session se=this.getSession();来获取,

2、        在依据hql获取用户信息时,继承了HibernateDaoSupport类的类中不能在使用Query类了,而是用List<Ssh> list = this.getHibernateTemplate().find(hql);形式来获取实体类集合


//  public String print(int id) {   
  
//     Session se = sf.openSession();   
  
//     String hql = "from Ssh where id=" + id;   
  
//     Query q = se.createQuery("hql");   
  
//     List<Ssh> list = q.list();   
  
//     String a = list.get(1).getName();   
  
//     return a;   
  
//  }   
  
    public String print(int id) {   
  
       Session se =this.getSession();//获取Session对象   
  
       String hql = "from Ssh where id=" + id;   
  
       //依据hql获取实体集合,此处不要用Query类来实现   
  
       List<Ssh> list = this.getHibernateTemplate().find(hql);   
  
       String a = list.get(0).getName();   
  
       return a;   
  
    }   
  
    public static void main(String[] args) {   
  
       ApplicationContext ac=newClassPathXmlApplicationContext   
  
("spring/spring.xml");   
  
       SshDAO ssh=(SshDAO)ac.getBean("sshD");   
  
       System.out.println(ssh.print(1));   
  
    }   




select trunc(sysdate ,'dd') from dual ;   --  2007-9-19

  select trunc(sysdate ,'yyyy') from dual ;   --2007-1-1

  select trunc(sysdate ,'mm') from dual ;   --2007-9-1

  begin

  dbms_output.put_line( to_char ( (sysdate)    , 'yyyy-mm-dd hh24:mi:ss'  ) ) ;