ক্যোয়ারী স্ট্রাকচার

রিসোর্স, সেগমেন্ট এবং মেট্রিক ফিল্ডের জন্য ক্যোয়ারী GoogleAdsService সার্চ বা SearchStream পদ্ধতিতে পাঠানো যেতে পারে। Google Ads Query Language-এ একটি কোয়েরি তৈরি করতে, আপনাকে ভাষা ব্যাকরণ ব্যবহার করে এটি তৈরি করতে হবে। একটি প্রশ্ন বেশ কয়েকটি ধারার সমন্বয়ে গঠিত:

  • SELECT
  • FROM
  • WHERE
  • ORDER BY
  • LIMIT
  • PARAMETERS

ক্লজগুলি আপনাকে সঠিক ডেটা নির্বাচন করতে সাহায্য করার জন্য ক্ষেত্রের নাম , সম্পদের নাম , অপারেটর , শর্তাবলী এবং ক্রম ব্যবহার করে। একবার একক প্রশ্নের সাথে মিলিত হলে, Google Ads API ব্যবহার করে একটি অনুরোধ করা যেতে পারে।

ধারা

ভিডিও: GAQL ফিল্ড সামঞ্জস্য

নির্বাচন করুন

SELECT ক্লজ অনুরোধে আনার জন্য ক্ষেত্রগুলির একটি সেট নির্দিষ্ট করে। SELECT রিসোর্স ক্ষেত্র, সেগমেন্ট ক্ষেত্র এবং মেট্রিক্সের একটি কমা-বিভক্ত তালিকা নেয়, প্রতিক্রিয়াতে মানগুলি ফিরিয়ে দেয়। একটি SELECT ধারাটি প্রয়োজন

নীচের নমুনা ক্যোয়ারী একটি প্রদত্ত সম্পদের জন্য বৈশিষ্ট্য নির্বাচন করার একটি উদাহরণ দেখায়:

SELECT
  campaign.id,
  campaign.name
FROM campaign

আপনি একটি একক অনুরোধে বিভিন্ন ক্ষেত্রের প্রকারের অনুরোধ করতে পারেন, উদাহরণস্বরূপ:

SELECT
  campaign.id,
  campaign.name,
  bidding_strategy.id,
  bidding_strategy.name,
  segments.device,
  segments.date,
  metrics.impressions,
  metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
  • সম্পদ ক্ষেত্র

    • campaign.id
    • campaign.name
  • সম্পদ ক্ষেত্র

    • bidding_strategy.id
    • bidding_strategy.name
  • সেগমেন্ট ক্ষেত্র

    • segments.device
    • segments.date
  • মেট্রিক্স

    • metrics.impressions
    • metrics.clicks

নিম্নলিখিত বিধিনিষেধের কারণে কিছু ক্ষেত্র SELECT ক্লজে অনুমোদিত নাও হতে পারে:

  • যে ক্ষেত্রগুলি নির্বাচনযোগ্য নয় সেগুলি অনুসন্ধান করা হচ্ছে৷ এই ক্ষেত্রগুলিতে তাদের Selectable মেটাডেটা বৈশিষ্ট্য false হিসাবে চিহ্নিত থাকবে।
  • পুনরাবৃত্ত ক্ষেত্রগুলির বৈশিষ্ট্য নির্বাচন করা। এই ক্ষেত্রগুলিতে তাদের isRepeated মেটাডেটা বৈশিষ্ট্যটি true হিসাবে চিহ্নিত থাকবে।
  • FROM ধারায় প্রদত্ত সংস্থানের জন্য উপলব্ধ নয় এমন ক্ষেত্র নির্বাচন করা। কিছু রিসোর্সের অ্যাট্রিবিউট একসাথে বাছাই করা যায় না, এছাড়াও FROM ক্লজে রিসোর্সের জন্য শুধুমাত্র সমস্ত মেট্রিক্স এবং সেগমেন্টের একটি উপসেট পাওয়া যাবে।
  • সেগমেন্ট বা মেট্রিক্স নির্বাচন করা যা একে অপরের সাথে সামঞ্জস্যপূর্ণ নয়। এই বিষয়ে আরও তথ্যের জন্য, বিভাজন বিভাগটি দেখুন।

উপরের শর্তগুলির সাথে সম্পর্কিত তথ্য আমাদের রেফারেন্স ডক্সে বা GoogleAdsFieldService থেকে পাওয়া যাবে।

থেকে

FROM ধারাটি মূল সংস্থানটি নির্দিষ্ট করে যা ফেরত দেওয়া হবে। FROM ক্লজের রিসোর্সটি নির্ধারণ করে যে প্রদত্ত প্রশ্নের জন্য অন্যান্য ধারাগুলির মধ্যে কোন ক্ষেত্রগুলি ব্যবহার করা যেতে পারে। শুধুমাত্র একটি একক সম্পদ FROM ধারায় নির্দিষ্ট করা যেতে পারে। GoogleAdsService অনুসন্ধান বা অনুসন্ধান স্ট্রীম পদ্ধতির একটি প্রশ্নে FROM ধারাটি প্রয়োজন , তবে GoogleAdsFieldService ব্যবহার করার সময় এটি নির্দিষ্ট করা উচিত নয়

যদিও একটি প্রদত্ত প্রশ্নের জন্য FROM ক্লজে শুধুমাত্র 1টি সংস্থান থাকতে পারে, অ্যাট্রিবিউটেড রিসোর্স থেকে ক্ষেত্রগুলিও উপলব্ধ হতে পারে। এই রিসোর্সগুলি FROM ক্লজের রিসোর্সের সাথে অস্পষ্টভাবে যোগ করা হয়েছে, তাই আপনাকে তাদের মানগুলি ফেরত দেওয়ার জন্য শুধুমাত্র SELECT ক্লজে তাদের বৈশিষ্ট্য যোগ করতে হবে। সমস্ত সম্পদের বৈশিষ্ট্যযুক্ত সম্পদ নেই। নিম্নলিখিত উদাহরণে আপনি বিজ্ঞাপন গ্রুপ থেকে বিজ্ঞাপন গ্রুপ আইডি এবং প্রচারাভিযান আইডি উভয়ের জন্য অনুরোধ করতে পারেন:

SELECT
  campaign.id,
  ad_group.id
FROM ad_group

প্রধান সম্পদের resource_name ক্ষেত্রটি সর্বদা ফেরত দেওয়া হয়। নিম্নলিখিত উদাহরণে, প্রশ্নে স্পষ্টভাবে নির্বাচিত না হওয়া সত্ত্বেও ad_group.resource_name প্রতিক্রিয়াতে অন্তর্ভুক্ত করা হবে:

SELECT ad_group.id
FROM ad_group

অন্তত একটি ক্ষেত্র নির্বাচন করা হলে অন্যান্য সম্পদের ক্ষেত্রেও একই কথা প্রযোজ্য। উদাহরণ স্বরূপ: নিচের প্রশ্নের উত্তরে campaign.resource_name অন্তর্ভুক্ত করা হবে:

SELECT
  campaign.id,
  ad_group.id
FROM ad_group

কোথায়

WHERE ক্লজ অনুরোধের জন্য ডেটা ফিল্টার করার সময় প্রয়োগ করার শর্তগুলি নির্দিষ্ট করে৷ WHERE ক্লজ ব্যবহার করার সময়, তাদের আলাদা করার জন্য AND ব্যবহার করে এক বা একাধিক শর্ত নির্দিষ্ট করা যেতে পারে। প্রতিটি শর্তের প্যাটার্ন field_name Operator value অনুসরণ করা উচিত। WHERE ক্লজ একটি প্রশ্নে ঐচ্ছিক

একটি নির্দিষ্ট সময়কাল থেকে মেট্রিক্স ফেরত দিতে WHERE ব্যবহার করার একটি উদাহরণ নিচে দেওয়া হল:

SELECT
  campaign.id,
  campaign.name,
  metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS

আপনি ডেটা ফিল্টার করতে একাধিক শর্ত একত্রিত করতে পারেন। এই উদাহরণটি গত 30 দিনে মোবাইলে ইম্প্রেশন সহ সমস্ত প্রচারাভিযানের জন্য ক্লিকের সংখ্যার জন্য অনুরোধ করবে৷

SELECT
  campaign.id,
  campaign.name,
  segments.device,
  metrics.clicks
FROM campaign
WHERE metrics.impressions > 0
  AND segments.device = MOBILE
  AND segments.date DURING LAST_30_DAYS

WHERE ক্লজের সেগমেন্টগুলি অবশ্যই SELECT ক্লজে থাকতে হবে, নিম্নলিখিত তারিখের সেগমেন্টগুলির সাথে, যেগুলিকে মূল তারিখ সেগমেন্ট হিসাবে উল্লেখ করা হয়, ব্যতিক্রম হচ্ছে:

  • segments.date
  • segments.week
  • segments.month
  • segments.quarter
  • segments.year

নিম্নলিখিত প্রশ্নে, মনে রাখবেন যে segments.date নির্বাচন করা হয়েছে। যেহেতু এই সেগমেন্টটি একটি মূল তারিখের সেগমেন্ট, এটির জন্য WHERE প্রদান করা হবে সেখানে মূল তারিখের অংশগুলি নিয়ে গঠিত একটি সসীম তারিখ ব্যাপ্তি প্রয়োজন।

SELECT
  campaign.id,
  campaign.name,
  segments.date,
  metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS

উপরের শর্ত পূরণ করে এমন সমস্ত বিভাগ হল: segments.date, segments.week, segments.month, segments.quarter, এবং segments.year৷ যদি এই বিভাগগুলির মধ্যে যেকোনো একটি নির্বাচন করা হয়, তাহলে তাদের মধ্যে অন্তত একটি WHERE ক্লজে ব্যবহার করতে হবে।

ফিল্টার করার সময়, আপনার অপারেটরের কেস-সংবেদনশীলতা মনে রাখা গুরুত্বপূর্ণ। আরও বিস্তারিত জানার জন্য কেস সংবেদনশীলতা দেখুন।

অপারেটরদের একটি সম্পূর্ণ তালিকার জন্য, ভাষা ব্যাকরণের সাথে পরামর্শ করুন।

অর্ডার করুন

ORDER BY ক্লজ যে ক্রমে ফলাফলগুলি ফেরত দিতে হবে তা নির্দিষ্ট করে৷ এটি আপনাকে একটি ক্ষেত্রের নামের উপর ভিত্তি করে ঊর্ধ্বগামী বা অবরোহী ক্রমে ডেটা সাজাতে দেয়। প্রতিটি অর্ডার একটি field_name হিসাবে নির্দিষ্ট করা হয় এবং ASC বা DESC দ্বারা অনুসরণ করা হয়। যদি ASC বা DESC নির্দিষ্ট করা না থাকে, তাহলে অর্ডারটি ASC তে ডিফল্ট হয়। একটি ORDER BY ধারাটি ঐচ্ছিক

নিম্নোক্ত ক্যোয়ারী সর্বোচ্চ থেকে সর্বনিম্ন পর্যন্ত ক্লিকের সংখ্যা অনুসারে ফেরত প্রচারাভিযানের আদেশ দেয়:

SELECT
  campaign.name,
  metrics.clicks
FROM campaign
ORDER BY metrics.clicks DESC

আপনি কমা দ্বারা পৃথক করা তালিকা ব্যবহার করে ORDER BY ক্লজে একাধিক ক্ষেত্র নির্দিষ্ট করতে পারেন। ক্যোয়ারীতে উল্লেখ করা একই ক্রমানুসারে ক্রম ঘটবে। উদাহরণ স্বরূপ, বিজ্ঞাপন গোষ্ঠীর ডেটা নির্বাচন করার এই ক্যোয়ারীতে, ফলাফলগুলি প্রচারের নাম অনুসারে ক্রমবর্ধমান ক্রমানুসারে সাজানো হবে, তারপরে ইম্প্রেশনের সংখ্যা অনুসারে নিচের ক্রমে, তারপরে ক্লিকের সংখ্যা অনুসারে নিচের ক্রমে সাজানো হবে:

SELECT
  campaign.name,
  ad_group.name,
  metrics.impressions,
  metrics.clicks
FROM ad_group
ORDER BY
  campaign.name,
  metrics.impressions DESC,
  metrics.clicks DESC

সীমা

LIMIT ক্লজ আপনাকে ফলাফলের সংখ্যা নির্দিষ্ট করতে দেয়। আপনি শুধুমাত্র একটি সারাংশ আগ্রহী হলে এটি দরকারী.

উদাহরণস্বরূপ, নিম্নলিখিত প্রশ্নের জন্য মোট ফলাফলের সংখ্যা সীমাবদ্ধ করতে LIMIT ব্যবহার করা যেতে পারে:

SELECT
  campaign.name,
  ad_group.name,
  segments.device,
  metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50

প্যারামিটার

PARAMETERS ক্লজ আপনাকে অনুরোধের জন্য মেটা প্যারামিটার নির্দিষ্ট করতে দেয়। এই পরামিতিগুলি কী ধরণের সারিগুলি ফেরত দেওয়া হয় তা প্রভাবিত করতে পারে৷

বর্তমানে, নিম্নলিখিত মেটা প্যারামিটার সমর্থিত:

অন্তর্ভুক্ত_খসড়া

ড্রাফ্ট include_drafts ফেরত দেওয়ার জন্য অন্তর্ভুক্ত_ড্রাফ্টগুলিকে true সেট করুন। ডিফল্ট থেকে false

উদাহরণস্বরূপ, নিম্নলিখিত ক্যোয়ারী নিয়মিত প্রচারাভিযানের সাথে খসড়া প্রচারাভিযান নিয়ে আসে:

SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true

বাদ দিন_অনির্বাচিত_সম্পদ_নাম

SELECT ক্লজে স্পষ্টভাবে অনুরোধ না করা পর্যন্ত প্রতিক্রিয়াতে প্রতিটি রিসোর্সের প্রকারের রিসোর্স নামকে ফেরত দেওয়া থেকে বিরত রাখতে omit_unselected_resource_names কে true সেট করুন। ডিফল্ট থেকে false

বাদ দেওয়া_অনির্বাচিত_সম্পদ_নামের উদাহরণ
SELECT
  campaign.name,
  customer.id
FROM campaign
Returned resources:
campaign.resource_name
customer.resource_name

omit_unselected_resource_names to false , তাই সমস্ত resource_name ক্ষেত্র ফেরত দেওয়া হয়।
SELECT
  campaign.name,
  customer.id
FROM campaign
PARAMETERS omit_unselected_resource_names = true
Returned resources:
কোনোটিই নয়।
omit_unselected_resource_names true হিসাবে নির্দিষ্ট করা হয়েছে এবং campaign.resource_name এবং customer.resource_name SELECT ধারার অংশ নয়।
SELECT
  campaign.name,
  campaign.resource_name
FROM campaign
PARAMETERS omit_unselected_resource_names = true
Returned resource:
campaign.resource_name
omit_unselected_resource_names কে true হিসেবে উল্লেখ করা হয়েছে এবং SELECT ক্লজের অংশ হিসেবে campaign.resource_name . রিসোর্স_নাম অনুরোধ করা হয়েছে।

অতিরিক্ত ভাষার নিয়ম

প্রতিটি ধারার উদাহরণ ছাড়াও, Google Ads Query Language-এর নিম্নলিখিত আচরণগুলি ব্যবহার করা যেতে পারে:

  • একটি প্রশ্নের জন্য প্রধান সংস্থান ক্ষেত্রের SELECT ক্লজে থাকা আবশ্যক নয় । উদাহরণস্বরূপ, আপনি ডেটা ফিল্টার করতে শুধুমাত্র এক বা একাধিক প্রধান সম্পদ ক্ষেত্র ব্যবহার করতে চাইতে পারেন:

    SELECT campaign.id
    FROM ad_group
    WHERE ad_group.status = PAUSED
    
  • মেট্রিক্স একচেটিয়াভাবে একটি প্রদত্ত সম্পদের জন্য নির্বাচন করা যেতে পারে; অনুসন্ধানে সম্পদ থেকে অন্য কোন ক্ষেত্র প্রয়োজন নেই:

    SELECT
      metrics.impressions,
      metrics.clicks,
      metrics.costMicros
    FROM campaign
    
  • বিভাজন ক্ষেত্রগুলি কোনও সহগামী সংস্থান ক্ষেত্র বা মেট্রিক্স ছাড়াই নির্বাচন করা যেতে পারে:

    SELECT segments.device FROM campaign
    
  • resource_name campaign.resource_name (উদাহরণস্বরূপ) ডেটা ফিল্টার বা অর্ডার করতে ব্যবহার করা যেতে পারে:

    SELECT
      campaign.id,
      campaign.name
    FROM campaign
    WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'