注:time字段类型 在sqlserver2000中为datatime,在oracle10g中为data,
请问在sqlserver2000中这两句是等价的么?select * from table where time>'2006-09-12 00:00:00'select * from table where time>'2006-09-12'如果换成oralce10g 我想写等价这句select * from table where time>'2006-09-12'的sql
是这样写么?select * from oracletable where time<to_date('2006-09-12','yyyy-mm-dd')

解决方案 »

  1.   

    sql2000里是等价的,
    select * from table where time>'2006-09-12'里的字符串会隐式转换为'2006-09-12 00:00:00'
    oralce10g 不懂,你该去oralce板块问问。
      

  2.   

    ---time datetime类型吗,如果是不用作转化一样的
    select * from table where time>'2006-09-12 00:00:00'select * from table where time>'2006-09-12'
    oracle to_date()转化日期函数。
      

  3.   


    1、MSSQL 
    select * from table where time>'2006-09-12 00:00:00'
    select * from table where time>'2006-09-12'等价的。理由同楼上。
      

  4.   

    oracle那更正一下:select * from oracletable where time>to_date('2006-09-12','yyyy-mm-dd')
      

  5.   

    oracle比较日期型和字符串时需要对字符串做转换。
    楼主方法没有问题。
      

  6.   

    select * from table where time>to_date('2006-09-12','yyyy-mm-dd');