ক্যোয়ারী গঠন

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

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

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

থেকে

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

একটি নির্দিষ্ট প্রশ্নের জন্য FROM ধারায় শুধুমাত্র একটি রিসোর্স থাকতে পারে, তবে অ্যাট্রিবিউটেড রিসোর্স থেকে ক্ষেত্রগুলিও উপলব্ধ থাকতে পারে। এই রিসোর্সগুলি 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 ডিফল্টভাবে 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 হিসেবে উল্লেখ করা হয়েছে এবং campaign.resource_name SELECT ধারার অংশ হিসেবে অনুরোধ করা হয়েছে।

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

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

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

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

    SELECT
      metrics.impressions,
      metrics.clicks,
      metrics.cost_micros
    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'