Marklogic SQL93和日期比较

Marklogic SQL93和日期比较,sql,date,marklogic,Sql,Date,Marklogic,Marklogic内置了SQL92标准,MakLogic中的文档提供了有关日期函数的一些详细信息 我有一个简单的查询来比较日期和传入的字符串日期。但似乎没有办法将字符串转换为与SQL92的MarkLogic实现内联的日期 我已经看过了标准函数,它们有一个curdate,但没有等效于CAST或CONVERT的函数,curdate也不会接受参数 select dateStart from namespace.dateTable where coalesce(dateStart,curdate())&

Marklogic内置了SQL92标准,MakLogic中的文档提供了有关日期函数的一些详细信息

我有一个简单的查询来比较日期和传入的字符串日期。但似乎没有办法将字符串转换为与SQL92的MarkLogic实现内联的日期

我已经看过了标准函数,它们有一个curdate,但没有等效于CAST或CONVERT的函数,curdate也不会接受参数

select dateStart from namespace.dateTable
where coalesce(dateStart,curdate())> XXX('1 Nov 2019')

我想返回2019年11月1日之后的所有日期,在这种情况下,

需要使用绑定。多亏了这个网站


curdate()。在标准SQL中,您可以编写
coalesce(datestart,current_date)>日期“2019-11-01”
。另外:没有SQL93标准。要么是SQL-92要么是SQL:1999你可能错过了整个MarkLogic。这是他们的sql实现。那么这个SQL93标准应该是什么呢?一些特定于MarcLogic的“标准”?我认为它是SQL92,但其余的仍然是正确的,正如我所写的:在标准SQL中是:
coalesce(datestart,current_date)>date'2019-11-01'
——但我不知道MarcLogic,所以我不知道它们是否真的符合这一点
const minYear = xs.date('2019-11-01');

//create a binding with the date being passed as a date
var bindings = {"date": minYear};

//add to the SQL the variable @date
var sqlString = `select * from namespace.table 
where dateStart >= @date limit 100
`;

//execute the sql with third argument the binding
xdmp.sql(sqlString, null, bindings).toArray();