क्वेरी स्ट्रक्चर

मेट्रिक और सेगमेंट फ़ील्ड के लिए क्वेरी, 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 टेबल काम करती है. reports सेवा पर search तरीके की क्वेरी में FROM क्लॉज़ ज़रूरी है.

WHERE

WHERE क्लॉज़, अनुरोध के लिए डेटा को फ़िल्टर करते समय लागू होने वाली शर्तों के बारे में बताता है. WHERE क्लॉज़ का इस्तेमाल करते समय, AND का इस्तेमाल करके एक या उससे ज़्यादा शर्तों को अलग करने के लिए तय किया जा सकता है. हर शर्त, field_name Operator value पैटर्न के हिसाब से होनी चाहिए. WHERE क्लॉज़ में किसी भी सेगमेंट फ़ील्ड का इस्तेमाल किया जा सकता है. हालांकि, WHERE क्लॉज़ में इस्तेमाल करने के लिए, मेट्रिक फ़ील्ड का SELECT क्लॉज़ में इस्तेमाल किया जाना ज़रूरी है. किसी क्वेरी में WHERE क्लॉज़ ज़रूरी है, क्योंकि आपको हमेशा तारीख की वह सीमा बतानी होगी जब आपको परफ़ॉर्मेंस डेटा दिखाना हो.

किसी तय समयावधि की मेट्रिक दिखाने के लिए, WHERE का इस्तेमाल करने का एक उदाहरण नीचे दिया गया है:

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

डेटा को फ़िल्टर करने के लिए, कई शर्तों को जोड़ा जा सकता है. इस उदाहरण में, Shopping_ADS प्रोग्राम के लिए हर ऑफ़र पर मिले क्लिक की संख्या दिखेगी. इसमें, दी गई 30 दिनों की अवधि में 100 से ज़्यादा क्लिक मिलेंगे.

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 पर सेट हो जाता है. ORDER BY क्लॉज़ में सिर्फ़ SELECT क्लॉज़ में दिए गए फ़ील्ड इस्तेमाल किए जा सकते हैं. किसी क्वेरी में 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