哪里错了 求解!!!!!!sql语句!!!!
select a.* from gnss_vehiclegpsrealtime a where a.recordtime >= convert(varchar(20),getdate() - 7,120);
------解决方案--------------------convert 是sqlserver的函数,可以展示不同的格式显示日期/时间数据
但是在oracle中,直接用
select a.* from gnss_vehiclegpsrealtime a where a.recordtime >= sysdate-7
就可以实现对recordtime的过滤
------解决方案--------------------oracle中convert()函数是用来编码字符串的,要过滤时间,可以用sysdate变量,它的单位是‘天’。当然还可以用to_date()函数
------解决方案--------------------如2楼 oracle中的convert 是转换字符集用的,可以用to_date,to_char 过滤,系统时间是sysdate ,
getdate() 是sqlserverde 的系统时间
------解决方案--------------------这么写就行了:
select a.* from gnss_vehiclegpsrealtime a where a.recordtime >= sysdate() - 7;
你的错误:
1、Oracle中没有 convert的日期转换函数
2、Oracle中没有 getdate,如果获取系统日期,请使用sysdate.
------解决方案--------------------oracle中日期的转换有convert函数吗?一般不都是to_date,to_char之类的