ویدئوی : اعتبارسنجی کوئریها
این صفحه شامل مرجع گرامر زبان پرسوجوی گوگل ادز است. برای جزئیات ساختار پرسوجو، به ساختار پرسوجو مراجعه کنید.
مرجع گرامر زبان کوئری گوگل ادز (به صورت عبارت منظم) در اینجا آمده است:
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 Operator Value Operator -> = | != | > | >= | < | <= | IN | NOT IN | LIKE | NOT LIKE | CONTAINS ANY | CONTAINS ALL | CONTAINS NONE | IS NULL | IS NOT NULL | DURING | BETWEEN | 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-Z_])* StringList -> ( String (, String)* ) LiteralList -> ( Literal (, Literal)* ) NumberList -> ( Number (, Number)* ) PositiveInteger -> [1-9] ([0-9])* Number -> -? [0-9]+ (. [0-9] [0-9]*)? String -> (' Char* ') | (" Char* ") Literal -> [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
? نشاندهنده یک عنصر اختیاری است
* به معنی صفر یا بیشتر؛ + به معنی یک یا بیشتر
(xxxxxx) نشان دهنده یک گروه بندی است
[a-z0-9] نشان دهنده محدوده کاراکترها است
| مخفف "یا" است
قوانین و محدودیتها
عملگر
REGEXP_MATCHاز سینتکس RE2 استفاده میکند.برای تطبیق یک کاراکتر حقیقی
[،]،%یا_با استفاده از عملگرLIKE، کاراکتر را داخل کروشه قرار دهید. برای مثال، شرط زیر با تمام مقادیرcampaign.nameکه با[Earth_to_Mars]شروع میشوند، مطابقت دارد:campaign.name LIKE '[[]Earth[_]to[_]Mars[]]%'عملگر
LIKEفقط روی فیلدهای رشتهای قابل استفاده است، نه روی آرایهها.