XQuery
提供各種date/time
功能,如current-dateTime()
,但我似乎無法找到一個給我的時間毫秒自Epoch以來。提取小時,分鐘和秒鐘的功能似乎單獨存在。有沒有什麼辦法可以讓XQuery獲得自一些Epoch以來的毫秒數?
在XQuery
中獲得紀元時間(即unix時間或類似情況)的正確方法是什麼?
XQuery
提供各種date/time
功能,如current-dateTime()
,但我似乎無法找到一個給我的時間毫秒自Epoch以來。提取小時,分鐘和秒鐘的功能似乎單獨存在。有沒有什麼辦法可以讓XQuery獲得自一些Epoch以來的毫秒數?
在XQuery
中獲得紀元時間(即unix時間或類似情況)的正確方法是什麼?
(current-dateTime() - xs:dateTime("1970-01-01T00:00:00-00:00")) div xs:dayTimeDuration('PT0.001S')
返回秒數作爲持續時間,然後除以1秒得到毫秒數作爲數字。
謝謝你的提示。我修改Oracle服務總線第11G(OSB11克)的XPath編輯器的代碼,以防別人需要它
{ (fn:current-dateTime() - xs:dateTime("1970-01-01T00:00:00-00:00")) div xdt:dayTimeDuration("PT0.001S") }
先生,那救了我一天,非常感謝你 – Tol182
上阿迪亞的回答爲OSB11克額外技巧。
有對XQ編輯一個惱人的錯誤,這將改變DIV和操作成,(逗號)。
只需在該代碼前面放置一個轉換函數即可。如xs:long,xs:string
ex。
{ xs:long((fn:current-dateTime() - xs:dateTime("1970-01-01T00:00:00-00:00")) div xdt:dayTimeDuration("PT0.001S")) }
有趣... –
謝謝,我認爲在dateTime之後有一個額外的括號,爲了正確執行,它需要是xs:dateTime。 – jbx
一致使用單引號或雙引號可能是一個好主意。如果這被用作XSLT標籤的'select'屬性的值,那麼它將與該屬性的引號衝突。 –
這是1970-01-01這是什麼?你爲什麼用這個減去currentTime? – basari66