|
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
|
Traduction
Source
|
Référence de syntaxe FAST Query Language (FQL)
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
Exemple de requête FQL
-
body: limite la portée de la requête à la propriété body géré au sein de l'élément. -
"hello world" est l'opérande de l'opérateur STRING , ce qui indique les termes à rechercher. -
mode="and" indique que la requête logique opérateur AND sera appliqué à "hello world".
Important
|
|---|
|
|
-
Un terme unique ou une phrase, comme suit : title:shakespeare
body:"to be or not to be" -
Un opérateur, par exemple, le STRING , comme suit : body:string("to be or not to be")Dans ce cas la spécification de propriété s'applique à l'expression d'opérateur complète.
Examples
and(title:much, title:nothing)
title:string("much nothing", mode="and")
Expressions génériques
-
l’astérisque (« * »), qui indique la mise en correspondance de zéro caractère ou plus (espace non compris) ; -
le point d’interrogation (« ? »), qui indique la mise en correspondance d’un caractère unique (espace non compris).
Exemples d'expressions génériques
-
text* -
*text -
*text* -
te?t -
*te?t -
string("this examp*") -
string("this *ample") -
string("this *ampl*") -
string("this exam?le") -
string("thi* exam?le")
Remarque
|
|---|
|
|
|
|
|
|---|---|
|
|
|
|
|
|
string("prefix*",maxexpansion=4)
Expressions numériques terme
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Expressions de requête de date et heure
-
AAAA-MM-JJ -
AAAA-MM-JJThh:mm:ss -
YYYY-MM-DDThh:mm:ssZ
-
AAAA indique une année à quatre chiffres.
Remarque
Seules les années à quatre chiffres sont prises en charge. -
MM indique un mois à deux chiffres.Par exemple, 01 = janvier. -
JJ indique un jour du mois à deux chiffres (de 01 à 31). -
T indique la lettre « T ». -
hh indique une heure à deux chiffres (de 00 à 23) ; l’indication A.M./P.M.n’est pas autorisée. -
mm indique une minute à deux chiffres (de 00 à 59). -
ss indique une seconde à deux chiffres (de 00 à 59).
Mots réservés et caractères spéciaux
-
or("any", "and", "xrank") -
string("any and xrank", mode="OR") -
phrase(this, is, a, "phrase")
Conseil
|
|---|
|
|
and("king", "queen")
-
property-spec est une spécification de propriété facultative suivie de l’opérateur « in ». -
operator est un mot clé qui spécifie une opération à effectuer. -
operand est une expression de terme ou un autre opérateur. -
parameter est le nom d’une valeur qui modifie le comportement de l’opérateur. -
value est la valeur à utiliser pour le nom de paramètre.
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Remarque
|
|---|
|
|
ET
Syntaxe
Collection Parameters
Examples
ANDNOT
Syntaxe
Collection Parameters
Examples
ANY
Remarque
|
|---|
|
|
Remarque
|
|---|
|
|
Syntaxe
Collection Parameters
Examples
NB
Syntaxe
Collection Parameters
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
Examples
|
|
|
|---|---|
|
|
|
|
|
|
DATETIME
Syntaxe
Collection Parameters
ENDS-WITH
Syntaxe
Collection Parameters
Examples
Note
-
utiliser des requêtes de mise en correspondance de limite explicites ; -
empêcher la mise en correspondance d'expressions à travers les limites de chaînes.Pour les propriétés gérées qui contiennent plusieurs chaînes, cette fonctionnalité permet de s’assurer qu’une chaîne n’est pas mise en correspondance avec des mots situés avant ou après une indication de limite.
EQUALS
Syntaxe
Collection Parameters
Examples
Note
FILTER
-
linguistics="OFF" ; -
le classement sera désactivé ; -
Aucune mise en surbrillance de requête ne sera utilisée dans le résumé de résultats pour le résultat de requête.
Conseil
|
|---|
|
|
Syntaxe
Collection Parameters
Examples
Note
-
and(string("hello world"), filter(property-spec:or(1, 20, 453, ..., 3473))) -
and(string("hello world"), filter(property-spec:int("1 20 453 ...3473", mode="or")))
FLOAT
Syntaxe
Collection Parameters
INT
Syntaxe
Collection Parameters
Examples
NEAR
Syntaxe
Collection Parameters
|
|
|
|
|---|---|---|
|
|
|
|
Examples
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
Note
NOT
Syntaxe
Collection Parameters
ONEAR
Syntaxe
Collection Parameters
|
|
|
|
|---|---|---|
|
|
|
|
Examples
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
Note
OR
Syntaxe
Collection Parameters
Examples
PHRASE
Syntaxe
Collection Parameters
Note
RANGE
Syntaxe
Collection Parameters
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Examples
STARTS-WITH
Syntaxe
Collection Parameters
Examples
Note
STRING
Syntaxe
Collection Parameters
|
|
|
|
||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
Examples
Note
-
Requête : and(string("a"), string("b", weight=200)) -
Schéma d’index : la propriété gérée title a davantage de poids que la propriété gérée body. -
L’élément d’index 1 contient le terme ’a’ dans le titre et le terme ’b’ dans le corps. -
L’élément d’index 2 contient le terme ’a’ dans le corps et le terme ’b’ dans le titre.
Conseil
|
|---|
|
|
XRANK
Remarque
|
|---|
|
|
Syntaxe
Formula
Collection Parameters
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
Paramètres avancés
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Examples
Remarque
|
|---|
|
|
string("<simple query language expression>", mode="simpleall")
string("<simple query language expression>", mode="simpleany")
-
simpleall: une logique AND est appliquée entre des termes et les expressions dans la zone <simple query language expression>, à moins que les termes du contrat est précédé avec un signe moins caractère («-»). -
simpleany: une logique OR est appliquée entre des termes et les expressions dans la zone <simple query language expression>, à moins que les termes du contrat est précédé avec un signe plus («+») ou moins caractère («-»).
Mode SIMPLEALL
|
|
|
|---|---|
|
|
|
|
|
|
Remarque
|
|---|
|
|
Mode SIMPLEANY
|
|
|
|---|---|
|
|
|
|
|
|
Remarque
|
|---|
|
|
fql-expression = (operator-expression / paren-expression / token)
operator-expression = [in-expression] (and / andnot / any / or / rank
/ xrank / near / onear / not / equals / filter / starts-with
/ ends-with / count)
paren-expression = [in-expression] "(" fql-expression ")"
token = [in-expression] (datetime-token / float-token / int-token
/ phrase-token / range-token / string-token)
; Operator expressions
and = "and" "(" multiple-fql-params ")"
andnot = "andnot" "(" multiple-fql-params ")"
any = "any" "(" multiple-fql-params ")"
or = "or" "(" multiple-fql-params ")"
rank = "rank" "(" rank-param *("," rank-param) ")"
rank-param = token / fql-expression
xrank = "xrank" "(" xrank-param *("," xrank-param) ")"
xrank-param = ("boost" "=" integer-value)
/ ("boostall" "=" yesno-value)
/ fql-expression
near = "near" "(" near-param *("," near-param) ")"
near-param = ("N" "=" token-distance) / fql-expression
onear = "onear" "(" onear-param *("," onear-param) ")"
onear-param = ("N" "=" token-distance) / fql-expression
not = "not" "(" fql-expression ")"
count = ("count" "(" token
1*("," (("from" "=" int-token) / ("to" "=" int-token))) ")")
equals = "equals" "("
[in-expression] (string-token / phrase-token) ")"
starts-with = "starts-with" "("
[in-expression] (string-token / phrase-token) ")"
ends-with = "ends-with" "("
[in-expression] (string-token / phrase-token) ")"
filter = "filter" "(" fql-expression ")"
; Token operator expressions
phrase-token = "phrase" "(" phrase-token-param
*("," phrase-token-param) ")"
phrase-token-param = ("weight" "=" unsigned-integer-value)
/ ("linguistics" "=" onoff-value)
/ ("wildcard" "=" onoff-value)
/ token
string-token = explicit-string-token / implicit-string-token
explicit-string-token = "string" "(" string-token-param
*("," string-token-param) ")"
string-token-param = ("mode" "=" mode-value)
/ ("N" "=" token-distance)
/ ("weight" "=" integer-value)
/ ("minexpansion" "=" integer-value)
/ ("maxexpansion" "=" integer-value)
/ ("linguistics" "=" onoff-value)
/ ("wildcard" "=" onoff-value)
/ token
implicit-string-token = string-value
float-token = explicit-float-token / implicit-float-token
explicit-float-token = "float" "(" (float-value
/ (DQUOTE float-value DQUOTE)) ")"
implicit-float-token = *DIGIT "." 1*DIGIT
int-token = explicit-int-token / implicit-int-token
explicit-int-token = "int" "(" (integer-value
/ (DQUOTE integer-value DQUOTE)
/ (DQUOTE integer-value *(SP integer-value) DQUOTE ","
numeric-or-mode)
/ (numeric-or-mode "," DQUOTE 1*integer-value *(SP integer-value)
DQUOTE))
")"
implicit-int-token = integer-value
datetime-token = explicit-datetime-token / implicit-datetime-token
explicit-datetime-token = "datetime" "(" (datetime-value
/ (DQUOTE datetime-value DQUOTE)) ")"
implicit-datetime-token = datetime-value
range-token = "range" "(" range-token-param *("," range-token-param)
")"
range-token-param = ("from" "=" from-condition)
/ ("to" "=" to-condition)
/ range-limit
range-limit = datetime-token / float-token / int-token
/ "min" / "max"
from-condition = unquoted-from-condition
/ (DQUOTE unquoted-from-condition DQUOTE)
unquoted-from-condition = "GE" / "GT"
to-condition = unquoted-to-condition
/ (DQUOTE unquoted-to-condition DQUOTE)
unquoted-to-condition = "LE" / "LT"
; Data types
string-value = quoted-string-value / unquoted-string-value
; <quoted-string-value> can contain any characters
; (including wide characters) that are not control
; characters, except for double quotation marks.quoted-string-value = DQUOTE 1*(quoted-escaped-character
/ %x20-21 / %x23-ffffffff) DQUOTE
quoted-escaped-character =
quoted-escaped-backslash
/ quoted-escaped-newline
/ quoted-escaped-carriage-return
/ quoted-escaped-tab
/ quoted-escaped-backspace
/ quoted-escaped-form-feed
/ quoted-escaped-double-quote
/ quoted-escaped-single-quote
quoted-escaped-backslash = "\\"
quoted-escaped-newline = "\n"
quoted-escaped-carriage-return = "\r"
quoted-escaped-tab = "\t"
quoted-escaped-backspace = "\b"
quoted-escaped-form-feed = "\f"
quoted-escaped-double-quote = "\" DQUOTE
quoted-escaped-single-quote = "'"
; <unquoted-string-value> can contain any characters (including wide
; characters) that are not control characters, except for spaces,
; commas, double quotation marks, parentheses,colons, and equals
; signs.unquoted-string-value =
1*(%x21 / %x23-27 / %x2a-2b / %x2d-39 / %x3b-3c / %x3e-ffffffff)
integer-value = ["-" / "+"] 1*DIGIT
unsigned-integer-value = 1*DIGIT
float-value = ["-" / "+"] (*DIGIT "." 1*DIGIT) / 1*DIGIT
datetime-value = year "-" month "-" day
["T" hour ":" minute ":" second ["Z"]]
year = 4*DIGIT ; four-digit or longer year (0000-infinity)
month = ("0" DIGIT) ; two-digit month (00-09)
/ ("1" %x30-32) ; two-digit month (10-12)
day = (%x30-32 DIGIT) ; two-digit day (00-29)
/ ("3" %x30-31) ; two-digit day (30-31)
hour = (%x30-31 DIGIT) ; two-digit hour (00-19)
/ ("2" %x30-33) ; two-digit hour (20-23)
minute = (%x30-35 DIGIT) ; two-digit minute (00-59)
second = (%x30-35 DIGIT) ; two-digit second (00-59)
yesno-value = quoted-yesno-value / unquoted-yesno-value
quoted-yesno-value = DQUOTE unquoted-yesno-value DQUOTE
unquoted-yesno-value = "YES" / "NO"
onoff-value = quoted-onoff-value / unquoted-onoff-value
quoted-onoff-value = DQUOTE unquoted-onoff-value DQUOTE
unquoted-onoff-value = "ON" / "OFF"
; <mode-value> must be inside double quotation marks.mode-value = DQUOTE ("PHRASE" / "AND" / "OR" / "ANY" / "NEAR"
/ "ONEAR" / "SIMPLEALL" / "SIMPLEANY") DQUOTE
; General syntax elements
in-expression = ((internal-property-name / property-name) ":")
/ (DQUOTE (internal-property-name / property-name) DQUOTE ":")
numeric-or-mode = "mode" "=" DQUOTE "OR" DQUOTE
token-distance = unsigned-integer-value
internal-property-name = property-name "." property-name
property-name = 1*(ALPHA / DIGIT)
multiple-fql-params = fql-expression 1*("," fql-expression)
Important