Я преобразовываю некоторые из моих запросов из CAML в SQL поиска SharePoint и столкнулся с проблемой при попытке сравнить мои поля метаданных Date с «Сегодня».
В частности, у меня есть следующая часть CAML-запроса, который использует:
<Leq><FieldRef Name="Article_x0020_Publish_x0020_Date"/><Value Type="DateTime"><Today /></Value></Leq>
При попытке преобразовать это в SQL-запрос поиска SharePoint я следовал документации Microsoft ; в частности документ DATEADD . Я придумал это:
SELECT Title, ArticlePublishDate FROM SCOPE() WHERE "SCOPE" = 'Articles' AND ArticlePublishDate <=DATEADD (DAY, 0, GETGMTDATE())
Однако, когда я использую этот запрос, я получаю следующее сообщение об исключении:
Имя не может начинаться с '='
символ, шестнадцатеричное значение 0x3D.
Строка 1, позиция 296.
В качестве дополнительного поворота, если вы измените оператор '<=' на оператор '> =', он примет запрос:
SELECT Title, ArticlePublishDate FROM SCOPE() WHERE "SCOPE" = 'Articles' AND ArticlePublishDate >=DATEADD (DAY, 0, GETGMTDATE())
Это случай понедельника? Microsoft связывается со мной? Или это действительно сломано ...