قواعد "لغة طلبات البحث في إعلانات Google"

تحتوي هذه الصفحة على مرجع قواعد لغة طلب البحث في "إعلانات Google". للاطّلاع على تفاصيل بنية طلب البحث، يُرجى مراجعة بنية طلب البحث.

مرجع نحوي

في ما يلي مرجع قواعد لغة طلب البحث في "إعلانات Google" (في تدوين التعبير العادي):

Query            -> SelectClause FromClause? WhereClause? OrderByClause?
                    LimitClause? ParametersClause?
SelectClause     -> SELECT FieldName ("," FieldName)*
FromClause       -> FROM ResourceName
WhereClause      -> WHERE Condition (AND Condition)*
OrderByClause    -> ORDER BY Ordering ("," Ordering)*
LimitClause      -> LIMIT PositiveInteger
ParametersClause -> PARAMETERS Literal "=" Value ("," Literal "=" Value)*

Condition        -> FieldName IS NULL
                  | FieldName IS NOT NULL
                  | FieldName BETWEEN Value AND Value
                  | FieldName Operator Value
Operator         -> "=" | "!=" | ">" | ">=" | "<" | "<=" | IN | NOT IN
                  | LIKE | NOT LIKE | CONTAINS ANY | CONTAINS ALL
                  | CONTAINS NONE | DURING
                  | REGEXP_MATCH | NOT REGEXP_MATCH
Value            -> Literal | LiteralList | Number | NumberList | String
                  | StringList | Function
Ordering         -> FieldName (ASC | DESC)?

FieldName        -> [a-z]([a-zA-Z0-9._])*
ResourceName     -> [a-z]([a-zA-Z0-9_])*

StringList       -> "(" String ("," String)* ")"
LiteralList      -> "(" Literal ("," Literal)* ")"
NumberList       -> "(" Number ("," Number)* ")"

PositiveInteger  -> [1-9]([0-9])*
Number           -> -?[0-9]+(\.[0-9]+)?
String           -> ("'" SingleQuoteChar* "'") | ('"' DoubleQuoteChar* '"')
SingleQuoteChar  -> [^'\\\r\n] | EscapeSequence
DoubleQuoteChar  -> [^"\\\r\n] | EscapeSequence
EscapeSequence   -> "\\" ("\\" | "'" | '"' | "n" | "r" | "t")
Literal          -> [a-zA-Z]([a-zA-Z0-9_])*

Function         -> LAST_14_DAYS | LAST_30_DAYS | LAST_7_DAYS
                  | LAST_BUSINESS_WEEK | LAST_MONTH | LAST_WEEK_MON_SUN
                  | LAST_WEEK_SUN_SAT | THIS_MONTH | THIS_WEEK_MON_TODAY
                  | THIS_WEEK_SUN_TODAY | TODAY | YESTERDAY
  • يشير الرمز ? إلى عنصر اختياري.
  • * تعني صفر أو أكثر، و+ تعني واحد أو أكثر.
  • يشير الرمز (...) إلى تجميع، بينما يشير الرمزان "(" و")" إلى قوسين حرفيين.
  • يشير الرمز [a-z0-9] إلى نطاقات الأحرف، ويشير الرمز [^...] إلى أي حرف باستثناء الأحرف المدرَجة.
  • يرمز | إلى "أو".

القواعد والقيود

  • يجب إدخال قيمة "FromClause" عند طلب البحث عن "GoogleAdsService"، ويجب حذفها عند طلب البحث عن "GoogleAdsFieldService".

  • يتيح WhereClause دمج الشروط مع AND فقط. لا يمكن استخدام عامل التشغيل المنطقي OR، لذا يُرجى استخدام عامل التشغيل IN أو REGEXP_MATCH بدلاً منه.

  • يستخدم عامل التشغيل REGEXP_MATCH بنية RE2.

  • لمطابقة حرف [ أو ] أو % أو _ باستخدام عامل التشغيل LIKE، يجب وضع الحرف بين قوسين مربعين. على سبيل المثال، يتطابق الشرط التالي مع جميع قيم campaign.name التي تبدأ بـ [Earth_to_Mars]:

    campaign.name LIKE '[[]Earth[_]to[_]Mars[]]%'
    
  • لا يمكن استخدام عامل التشغيل LIKE إلا في حقل سلسلة، وليس في مصفوفة.