我要查询图书馆过期还没还的记录,日期之间比较的查询SQL语句怎么查啊!
还有我的思路也不是很清楚
  例如:读者归还了图书 我可以按照他归还的日期和借书的日期比较 查询出他是否过期
        如果读者没有归还图书,还超过了规定的归还时间按 我应该怎么写查询语句呢?现在还没有想明白,希望知道的多多帮忙,不胜感激!

解决方案 »

  1.   

    你用的什么数据库?一般都能直接用<,>,=,!=这些运算符比的啊。
    哦,如果是常量和字段比的话,那要做类型转换的。
    至于转换的函数,各个数据库不一样。
      

  2.   

    oracle的话,可以试试这样:
    select * from your_table where return_time is null 
    and sysdate > to_data(borrow_date,'YYYY-MM-DD hh24:mi:ss')+30return_time是还书时间,如果还没还的话,应该是空值。
    sysdate  是oracle的当前时间,borrow_date是借书的时间,30是借阅期限。
      

  3.   

    我用的事access 数据库 
    借书日期  borrowdate
    应该还书日期returndate
    实际还书日期realdate
      

  4.   

    我用的事access 数据库 
    借书日期  borrowdate 
    应该还书日期returndate 
    实际还书日期realdate
      

  5.   

    oracle可以直接用">" , "<" 
      

  6.   

    我记得 Access 要将字符串作为日期的话,好像两边要加个什么 # 的。PS:Access 这种不能称为数据库,我只把它当作办公用品看待,在 Java 正式开发中根本就不可能使用 Access 数据库的,建议你去找个 MySQL 或者是 PostgreSQL 来用吧,都是免费、开源的,就算是 Java 的内存数据库 HSQLDB, Derby 这些都比 Access 强。
      

  7.   

    dataformat("数据库中的data字段","%Y-%M-%D")这样可以匹配字符串
      

  8.   

      是oracle 的话, ·  就用3楼的去试试了。