我正在使用xdmp:document-filter(doc(uri))
從文檔中提取元數據。當我在其中一個文檔上運行此命令時,我得到以下結果: -Marklogic中的日期格式問題
xdmp:document-filter(doc(「/ Vision.doc」))// *:meta [@name eq「Creation_Date」]/@內容
<?xml version="1.0" encoding="UTF-8"?>
<results warning="attribute node">
<warning warning="attributes cannot be root nodes" content="17-05-2012 00:48:00"/>
</results>
當我在另一個文件運行此命令,然後我得到這個: -
<?xml version="1.0" encoding="UTF-8"?>
<results warning="attribute node">
<warning warning="attributes cannot be root nodes" content="2012-06-03T13:45:00Z"/>
</results>
你可以看到,日期格式是在兩個輸出不同。在Marklogic Server中上傳的文檔中可能有不同的日期格式。但我想以某種固定格式顯示文檔的創建日期(例如2012年5月16日)。如何將不同的日期格式轉換爲固定的日期格式?而且我想將這些日期與用戶輸入的日期進行比較。搜索查詢應返回符合搜索條件的文檔。所以我在這裏有兩個問題: -
- 如何將特定文檔的創建日期轉換爲某種固定格式並將其顯示在UI中。
- 如何將此創建日期與用戶輸入的日期(使用「mm/dd/yyyy」格式)進行比較,以便我可以得到正確的結果。
此查詢返回以下輸出: - <?xml version =「1.0」encoding =「UTF-8」?> 2022-11-02T00:00:00 + 05: 30 這不是有效的日期時間值,我只想顯示日期。我不想要約會時間。 –
2012-07-26 06:06:34
@Puneet - 這實際上是一個有效的日期時間值。它是[XML Schema](http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#dateTime)中定義的一個,它是MarkLogic在索引中支持的類型。使用原子類型,您可以使用xdmp dateTime函數創建帶格式的字符串 - 例如:'fn:format-dateTime(xs:dateTime(「2022-11-02T00:00:00 + 05:30」),「[Y01]/[M01]/[D01]「)=> 22/11/02' – wst 2012-07-27 00:28:53