Je convertis certaines des requêtes que j'ai de CAML en SQL de recherche SQL et j'ai rencontré un problème en essayant de comparer mes champs de métadonnées Date à "Aujourd'hui".En comparant les champs de date à "Aujourd'hui" en utilisant SharePoint search SQL?
Plus précisément, j'ai la partie suivante d'une requête CAML qui utilise:
<Leq><FieldRef Name="Article_x0020_Publish_x0020_Date"/><Value Type="DateTime"><Today /></Value></Leq>
Lorsque vous tentez de convertir en recherche SharePoint SQL que je suivais le microsoft documentation; spécifiquement le DATEADD documentation. Je suis venu avec ceci:
SELECT Title, ArticlePublishDate FROM SCOPE() WHERE "SCOPE" = 'Articles' AND ArticlePublishDate <=DATEADD (DAY, 0, GETGMTDATE())
Cependant, quand j'utilise cette requête que je reçois le message d'exception suivant:
nom ne peut pas commencer par le « = » caractère, valeur hexadécimale 0x3D. ligne 1, 296.
Comme une touche supplémentaire, si vous changez le '< =' opérateur à un opérateur '> =' il accepte la requête:
SELECT Title, ArticlePublishDate FROM SCOPE() WHERE "SCOPE" = 'Articles' AND ArticlePublishDate >=DATEADD (DAY, 0, GETGMTDATE())
Est-ce un cas du lundi? Est-ce que Microsoft joue avec moi? Ou est-ce vraiment cassé ...
Wow, je n'ai même pas pensé à ça ... mais tu as raison! Si j'utilise la valeur codée (> ou < au lieu de> ou <) alors cela fonctionne comme prévu! –