Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magnolia 木兰JCR-SQL2按日期订购_Magnolia_Jcr Sql2 - Fatal编程技术网

Magnolia 木兰JCR-SQL2按日期订购

Magnolia 木兰JCR-SQL2按日期订购,magnolia,jcr-sql2,Magnolia,Jcr Sql2,在JCR中,我注意到日期是以2015年2月19日12:00:00 AM的格式存储的。这意味着,当您尝试按日期排序查询时,它似乎不起作用: SELECT * FROM [mgnl:pages] ORDER BY articlePublishedDate 将返回: 2015年4月1日上午12:00:00 2015年12月1日上午12:00:00 2015年2月1日凌晨12:00:00 是否有任何方法可以使ORDER BY子句充当整数?我尝试了CAST(articlePublishedDate尽

在JCR中,我注意到日期是以
2015年2月19日12:00:00 AM
的格式存储的。这意味着,当您尝试按日期排序查询时,它似乎不起作用:

SELECT * FROM [mgnl:pages] ORDER BY articlePublishedDate
将返回:

  • 2015年4月1日上午12:00:00
  • 2015年12月1日上午12:00:00
  • 2015年2月1日凌晨12:00:00

是否有任何方法可以使ORDER BY子句充当整数?我尝试了
CAST(articlePublishedDate尽可能长)
但我的内容存储库似乎不喜欢它…

这是JCR的问题,而不是Magnolia,但是,为了解决这个问题,可以做以下操作

SELECT p.* FROM [mgnl:page] AS p
WHERE p.[mgnl:lastModified] > CAST('2016-06-10T07:24:50.233Z' AS DATE)
我认为order by也应该以同样的方式工作


干杯

这更像是JCR的问题,而不是Magnolia,不过,为了解决这个问题,我们可以做以下几点

SELECT p.* FROM [mgnl:page] AS p
WHERE p.[mgnl:lastModified] > CAST('2016-06-10T07:24:50.233Z' AS DATE)
我认为order by也应该以同样的方式工作


干杯

确保
articlePublishedDate
节点属性的类型为
日期
,而不是
字符串
。例如,在
网站
存储库上执行以下JCR2查询时,会以正确的顺序返回结果:

select p.* from [mgnl:page] as p order by p.[jcr:created] desc

确保
articlePublishedDate
节点属性的类型为
Date
,而不是
String
。例如,在
网站
存储库上执行以下JCR2查询时,会以正确的顺序返回结果:

select p.* from [mgnl:page] as p order by p.[jcr:created] desc

最终在代码中排序,因为我的JCR实现不支持它。

最终在代码中排序,因为我的JCR实现不支持它