מבנה השאילתה

אפשר לשלוח שאילתות על שדות של מדדים ופלחים ל-method reports.search. כדי ליצור שאילתה בשפת השאילתה ב-Merchant Center, צריך קודם לכתוב את השאילתה באמצעות דקדוק השפה. השאילתה מורכבת מכמה תנאים:

  • SELECT
  • FROM
  • WHERE
  • ORDER BY
  • LIMIT

הסעיפים משתמשים בשמות השדות, בשמות הטבלאות, באופרטורים, בתנאים וב-סידורים כדי לעזור לכם לבחור את הנתונים הרצויים. ברגע שמשלבים שאילתה יחידה, אפשר לשלוח בקשה באמצעות Google Content API for Shopping. בואו נראה איך אפשר להשתמש בכל סעיף.

סעיפים

SELECT

הסעיף SELECT מציין קבוצת שדות לאחזור בבקשה. SELECT לוקח רשימה מופרדת בפסיקים של שדות ומדדים של הפילוח, ומחזיר את הערכים בתשובה. התנאי SELECT הוא חובה בשאילתה.

לפניכם שאילתה לדוגמה הבוחרת מדדי קליקים מטבלה נתונה:

SELECT
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’

אפשר גם להריץ שאילתות על סוגי שדות שונים בבקשה אחת:

SELECT
  segments.date,
  segments.program,
  metrics.impressions,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
  • שדות פילוח

    • segments.date
    • segments.program
  • מדדים

    • metrics.impressions
    • metrics.clicks

אי אפשר להשתמש בחלק מהשדות בסעיף SELECT בגלל ההגבלה הבאה:

  • שליחת שאילתה לשדות פילוח ללא שדה מדד אחד לפחות.

ניתן למצוא מידע שקשור לתנאי שלמעלה במסמכי העזר שלנו.

FROM

הסעיף FROM מציין את הטבלה שממנה מאחזרים נתונים בבקשה. בטבלה שבסעיף FROM מוגדרות השדות שבהם אפשר להשתמש בכל הסעיפים האחרים של השאילתה הנתונה. אפשר לציין רק טבלה אחת בסעיף FROM. בשלב הזה, יש תמיכה רק בטבלה של MerchantPerformanceView. התנאי FROM הוא חובה בשאילתה ל-method search בשירות reports.

WHERE

הסעיף WHERE מציין את התנאים שצריך להחיל כשמסננים נתונים לבקשה. כשמשתמשים בתנאי WHERE, אפשר לציין תנאי אחד או יותר באמצעות AND כדי להפריד ביניהם. כל אחד מהתנאים צריך להיות בתבנית field_name Operator value. בסעיף WHERE אפשר להשתמש בכל שדה של פלחים, אבל צריך לציין שדות של מדדים בסעיף SELECT כדי להשתמש בהם בתנאי WHERE. הסעיף WHERE הוא חובה בשאילתה, כי תמיד צריך לציין את טווח התאריכים שבו רוצים לקבל את נתוני הביצועים.

הדוגמה הבאה היא איך להשתמש ב-WHERE כדי להחזיר מדדים מתקופת זמן נתונה:

SELECT
  segments.offer_id,
  metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’

אפשר לשלב כמה תנאים כדי לסנן את הנתונים. בדוגמה הזו המערכת תחזיר את מספר הקליקים לכל מוצר בתוכנית SHOPPING_ADS, כאשר כמות הקליקים שהייתה גדולה מ-100 בתקופה הנתונה של 30 יום.

SELECT
  segments.offer_id,
  segments.program,
  metrics.clicks
FROM MerchantPerformanceView
WHERE metrics.clicks > 100
  AND segments.program = SHOPPING_ADS
  AND segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’;

בשאילתה הבאה תוכלו לראות שהחשבון segments.date נבחר. לא משנה אם בוחרים באפשרות segments.date, תמיד צריך לספק טווח תאריכים סופי בתנאי WHERE כדי לאחזר נתוני ביצועים.

SELECT
  segments.date,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’

במהלך הסינון, חשוב לזכור את התלות באותיות רישיות של האופרטור.

לרשימה מלאה של האופרטורים אפשר לעיין בדקדוק של השפה.

ORDER BY

הסעיף ORDER BY מציין את הסדר שבו מוחזרות התוצאות. כך הנתונים יסודרו בסדר עולה או יורד לפי שם השדה. כל הזמנה מצוינת כ-field_name ואחריה ASC או DESC. אם לא מציינים את ASC או את DESC, ברירת המחדל של הסדר היא ASC. אפשר להשתמש רק בשדות שצוינו בתנאי SELECT בסעיף ORDER BY. התנאי ORDER BY הוא אופציונלי בשאילתה.

השאילתה הבאה מסדרת את השורות שמוחזרות לפי מספר הקליקים מהגבוה לנמוך:

SELECT
  segments.offer_id,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.clicks DESC

אפשר לציין מספר שדות בתנאי ORDER BY באמצעות רשימה שמופרדת בפסיקים. הסדר יתבצע באותו רצף שצוין בשאילתה. לדוגמה, בשאילתה הזו התוצאות ימוינו בסדר עולה לפי offer_id, לאחר מכן בסדר יורד לפי מספר החשיפות, ולאחר מכן בסדר יורד לפי מספר הקליקים:

SELECT
  segments.offer_id,
  metrics.impressions,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY
  segments.offer_id,
  metrics.impressions DESC,
  metrics.clicks DESC

הגבלה

הסעיף LIMIT מאפשר לציין את מספר התוצאות שיוחזרו. האפשרות הזו שימושית אם אתם מתעניינים רק בסיכום.

לדוגמה, אפשר להשתמש ב-LIMIT כדי להגביל את מספר התוצאות הכולל בשאילתה הבאה:

SELECT
  segments.program,
  segments.offer_id,
  metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.impressions DESC
LIMIT 50