我有这样的查询
select * from xxx where dates between '2012-10-26' and '2012-10-27'.
并按照
这样的网址进行操作url/?$filter=dates gt datetime'2012-10-26' and dates lt datetime'2012-10-27'
我正在使用这个回复。
现在,我需要获取时间,因此我将网址更改为
&$filter=LastModifiedDate+ge+datetime'2012-09-25 23:59:59'
但是我收到了一个错误:
{“odata.error”:{“code”:“”,“message”:{“lang”:“en-US”,“value”:“无法识别的'Edm.DateTime'字面数'datetime'2012- 09-25 12:00:00''在'LastModifiedDate ge datetime'2012-09-25 12:00:00''''''20''。}}}}
答案 0 :(得分:0)
简短回答
dateTimeOffsetValue = year "-" month "-" day "T" hour ":" minute [ ":" second [ "." fractionalSeconds ] ] ( "Z" / sign hour ":" minute )
示例:2000-01-01T16:00:00.000Z
edm:Date表达式计算为原始日期值。一个约会 表达式必须赋值为xs:date的值,参见 [XML-Schema-2],第3.3.9节。值必须符合规则 [OData-ABNF]中的dateValue,即它不能包含时区 偏移量。
日期代表完全一天的最开放间隔 dateTime的时间表,从每天的开始时刻开始, 最多但不包括第二天的开始时刻)。对于 非时间值,顶部开放的间隔不相交地覆盖 非时间化时间线,每天一个。对于timezoned值, 间隔从每分钟开始,因此重叠。
因此,您想要的是DateTimeOffset
:
edm:DateTimeOffset表达式求值为原始日期/时间 具有时区偏移的值。必须分配日期/时间表达式 xs:dateTimeStamp类型的值,参见[XML-Schema-2],第3.4.28节。 值必须符合规则dateTimeOffsetValue in [OData-ABNF],即它不得包含一个日终片段 (24:00:00)。