একটি ক্যোয়ারী বেশ কয়েকটি ধারা নিয়ে গঠিত: SELECT
, FROM
, WHERE
, ORDER BY
, LIMIT
, এবং PARAMETERS
।
ক্লজগুলি ক্ষেত্রের নাম , সম্পদের নাম , অপারেটর , শর্তাবলী এবং অর্ডারগুলি ব্যবহার করে যা একটি একক ক্যোয়ারী অনুরোধে একত্রিত হয়।
মৌলিক পদে, একটি প্রশ্ন তৈরি করতে আপনি:
- ডেটা পুনরুদ্ধার করার জন্য একটি সংস্থান নির্দিষ্ট করুন৷
- আপনি যে ডেটা ফেরত দিতে চান তা নির্ধারণ করতে ক্ষেত্র এবং মেট্রিক্স যোগ করুন।
- আপনার ফলাফল গোষ্ঠীতে বিভাগ যোগ করুন।
- সম্পর্কিত সম্পদ ডেটাতে অন্তর্নিহিতভাবে যোগ দিতে অ্যাট্রিবিউটেড রিসোর্স যোগ করুন।
- আপনার ফলাফলগুলি ফিল্টার করুন, অর্ডার করুন এবং সীমিত করুন।
ধারা SELECT
SELECT
ক্লজ:
- একটি প্রশ্নে একটি প্রয়োজনীয় ধারা।
- অনুরোধে আনার জন্য ক্ষেত্রগুলির একটি সেট নির্দিষ্ট করে।
- রিসোর্স ক্ষেত্র, কাস্টম কলাম, কাস্টম ফ্লাডলাইট ভেরিয়েবল, সেগমেন্ট ক্ষেত্র এবং মেট্রিক্সের একটি কমা-বিভক্ত তালিকা নেয় এবং প্রতিক্রিয়াতে মানগুলি প্রদান করে।
এই উদাহরণ ক্যোয়ারী আপনাকে দেখায় কিভাবে campaign
সম্পদের বৈশিষ্ট্য নির্বাচন করতে হয়:
SELECT
campaign.id,
campaign.name
FROM campaign
একাধিক ক্ষেত্র প্রকার
আপনি একই অনুরোধে বিভিন্ন ক্ষেত্রের প্রকারের অনুরোধ করতে পারেন।
নীচের উদাহরণের ক্যোয়ারীটি এর সংমিশ্রণ সহ একটি একক প্রশ্ন দেখায়:
- সম্পদ ক্ষেত্র:
campaign.id
,campaign.name
,bidding_strategy.id
, এবংbidding_strategy.name
। - সেগমেন্ট ক্ষেত্র:
segments.device
এবংsegments.date
। - মেট্রিক্স ক্ষেত্র:
metrics.impressions
এবংmetrics.clicks
।
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
আপনার অনুসন্ধান প্রতিবেদনগুলিকে ভাগ করার বিষয়ে আরও জানতে সেগমেন্টেশন দেখুন।
প্রধান সম্পদ ক্ষেত্র
সাধারণত, আপনি আপনার প্রধান সম্পদ ক্ষেত্রটি SELECT
ক্লজে অন্তর্ভুক্ত করবেন, তবে এটি ঐচ্ছিক (প্রয়োজন নয় )।
এই উদাহরণ ক্যোয়ারী শুধুমাত্র ফলাফল ফিল্টার করার জন্য একটি প্রধান সম্পদ ক্ষেত্র ( ad_group.status
) ব্যবহার করে।
SELECT campaign.id
FROM ad_group
WHERE ad_group.status = PAUSED
কাস্টম ফ্লাডলাইট ভেরিয়েবল
আপনি তাদের আইডি ব্যবহার করে SELECT ক্লজে কাস্টম ফ্লাডলাইট ভেরিয়েবল অন্তর্ভুক্ত করতে পারেন।
এই উদাহরণে, ক্যাম্পেইন রিসোর্সের জন্য আইডি 123454321 সহ ক্যোয়ারীতে একটি কাস্টম ভেরিয়েবল রয়েছে।
SELECT
conversion_custom_metrics.id[123454321]
FROM campaign
SELECT
conversion_custom_dimensions.id[123454321]
FROM campaign
কাস্টম কলাম
আপনি তাদের আইডি ব্যবহার করে SELECT ক্লজে কাস্টম কলাম অন্তর্ভুক্ত করতে পারেন।
এই উদাহরণে, ক্যাম্পেইন রিসোর্সের জন্য ক্যোয়ারীতে আইডি 12345678 সহ একটি কাস্টম কলাম রয়েছে।
SELECT
custom_columns.id[12345678]
FROM campaign
দেখুন কিভাবে কাস্টম কলাম আইডি পেতে হয় ।
মেট্রিক্স ক্ষেত্র
আপনি একটি প্রদত্ত সংস্থানের জন্য মেট্রিক্স ক্ষেত্র নির্বাচন করতে পারেন SELECT
ক্লজে সংস্থান থেকে অন্য কোনও ক্ষেত্র অন্তর্ভুক্ত না করে।
এই উদাহরণ ক্যোয়ারী campaign
সম্পদের জন্য impressions
এবং clicks
মেট্রিক্স নির্বাচন করে।
SELECT
metrics.impressions,
metrics.clicks
FROM campaign
আপনি আপনার প্রশ্নগুলিতে ব্যবহার করতে পারেন এমন মেট্রিক্স ক্ষেত্রগুলির একটি তালিকার জন্য metrics
দেখুন৷
সেগমেন্ট ক্ষেত্র
আপনি SELECT
ক্লজে সহগামী রিসোর্স ক্ষেত্র বা মেট্রিক্স উল্লেখ না করে সেগমেন্ট ক্ষেত্র নির্বাচন করতে পারেন।
এই উদাহরণ ক্যোয়ারী বিভাগ দ্বারা ডিভাইস ফলাফল.
SELECT segments.device
FROM campaign
সেগমেন্ট ক্ষেত্রগুলির একটি তালিকার জন্য segments
দেখুন যা আপনি আপনার প্রশ্নগুলিতে ব্যবহার করতে পারেন৷
নিষিদ্ধ ক্ষেত্র
আপনি SELECT
ক্লজে নিম্নলিখিত ক্ষেত্রগুলি ব্যবহার করতে পারবেন না:
- অ-নির্বাচনযোগ্য ক্ষেত্রগুলি, অর্থাৎ,
Selectable
মেটাডেটা বৈশিষ্ট্যযুক্ত ক্ষেত্রগুলিfalse
হিসাবে চিহ্নিত৷ - পুনরাবৃত্ত ক্ষেত্রগুলি, অর্থাৎ,
Repeated
মেটাডেটা বৈশিষ্ট্য সহ ক্ষেত্রগুলিtrue
হিসাবে চিহ্নিত৷ - যে ক্ষেত্রগুলি
FROM
ধারায় প্রদত্ত সংস্থানের জন্য উপলব্ধ নয়৷ কিছু সম্পদের বৈশিষ্ট্য একসাথে নির্বাচন করা যাবে না। কিছু সম্পদ শুধুমাত্র উপলব্ধ সমস্ত মেট্রিক এবং সেগমেন্টের একটি উপসেট তৈরি করে। - বেমানান সেগমেন্ট বা মেট্রিক্স। আরও তথ্যের জন্য বিভাগ দেখুন।
প্রতিটি সম্পদের জন্য এই তথ্য কোথায় পাওয়া যাবে তার বিশদ বিবরণের জন্য রেফারেন্স ডকুমেন্টেশন দেখুন।
ধারা থেকে
FROM
ধারা:
-
SearchAds360Service
(উভয়Search
এবংSearchStream
পদ্ধতি) প্রশ্নের জন্য একটি প্রয়োজনীয় ধারা। -
SearchAds360FieldService
এর প্রশ্নের জন্য অন্তর্ভুক্ত করা উচিত নয় । - ক্যোয়ারী রিটার্ন করা প্রধান সম্পদ নির্দিষ্ট করে।
- শুধুমাত্র একটি একক সম্পদ নির্দিষ্ট করতে পারেন.
- আপনি ক্যোয়ারীতে অন্যান্য সমস্ত ধারায় ব্যবহার করতে পারেন এমন ক্ষেত্রগুলিকে সংজ্ঞায়িত করে।
আরোপিত সম্পদ
যদি অ্যাট্রিবিউটেড রিসোর্স পাওয়া যায় তাহলে সেগুলি আপনার FROM
ক্লজে উল্লেখ করা রিসোর্সের সাথে অস্পষ্টভাবে যুক্ত হয়। তাদের মান ফেরত দেওয়ার জন্য আপনাকে শুধুমাত্র SELECT
ক্লজে তাদের গুণাবলী যোগ করতে হবে।
এই উদাহরণ কোয়েরি বিজ্ঞাপন গ্রুপ আইডি এবং ক্যাম্পেইন আইডি উভয়ই প্রদান করে, কারণ campaign
হল ad_group
রিসোর্সের একটি অ্যাট্রিবিউটেড রিসোর্স।
SELECT
campaign.id,
ad_group.id
FROM ad_group
resource_name
ক্ষেত্র
FROM
ক্লজের প্রধান সম্পদের resource_name
ক্ষেত্রটি সর্বদা প্রদান করা হয়।
এই উদাহরণের ক্যোয়ারীতে, ad_group.resource_name
প্রতিক্রিয়াতে অন্তর্ভুক্ত করা হবে যদিও এটি কোয়েরিতে স্পষ্টভাবে নির্বাচন করা হয়নি:
SELECT ad_group.id
FROM ad_group
একটি অ্যাট্রিবিউটেড রিসোর্সের resource_name
ক্ষেত্রটি ফেরত দেওয়া হয় যখন অন্তত একটি ক্ষেত্র নির্বাচন করা হয়।
এই উদাহরণের ক্যোয়ারীতে, campaign.resource_name
প্রতিক্রিয়াতে অন্তর্ভুক্ত করা হবে কারণ campaign.id
নির্বাচন করা হয়েছে:
SELECT
campaign.id,
ad_group.id
FROM ad_group
WHERE ধারা
WHERE
ধারা:
- একটি প্রশ্নের মধ্যে একটি ঐচ্ছিক ধারা।
- অনুরোধের জন্য ডেটা ফিল্টারিং এবং সেগমেন্ট করার শর্তগুলি নির্দিষ্ট করে৷ শর্তগুলি এই প্যাটার্ন অনুসরণ করে:
FIELD_NAME
OPERATOR
VALUE
(ফাঁকা স্থান দ্বারা পৃথক করা হয়েছে)। -
AND
বিভাজক দ্বারা পৃথক করা একাধিক শর্ত অন্তর্ভুক্ত করতে পারে।
এই উদাহরণ ক্যোয়ারী দেখায় কিভাবে একটি নির্দিষ্ট সময়ের জন্য impressions
মেট্রিক্স ফেরাতে WHERE
ক্লজ ব্যবহার করতে হয়:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
আপনার অনুসন্ধান প্রতিবেদনগুলিকে ভাগ করার বিষয়ে আরও জানতে সেগমেন্টেশন দেখুন।
আপনার ক্যোয়ারীতে তারিখ ব্যাপ্তি নির্দিষ্ট করার বিষয়ে আরও জানতে তারিখের ব্যাপ্তি দেখুন।
resource_name
ক্ষেত্র দ্বারা ফিল্টার করুন
আপনি ডেটা ফিল্টার বা অর্ডার করতে resource_name
ক্ষেত্রটি ব্যবহার করতে পারেন।
এই উদাহরণ ক্যোয়ারী একটি প্রদত্ত প্রচারাভিযান দ্বারা ফলাফল ফিল্টার করার জন্য campaign.resource_name
ক্ষেত্র ব্যবহার করে:
SELECT
campaign.id,
campaign.name
FROM campaign
WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'
একাধিক শর্ত
আপনি আপনার ডেটা ফিল্টার করতে একাধিক শর্ত একত্রিত করতে পারেন।
এই উদাহরণ কোয়েরিটি গত 30 দিনের জন্য মোবাইলে impressions
মেট্রিক্স সহ সমস্ত প্রচারাভিযানের জন্য clicks
সংখ্যার জন্য অনুরোধ করে৷
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
আপনার প্রতিবেদনগুলিকে ভাগ করার বিষয়ে আরও জানতে সেগমেন্টেশন দেখুন।
কেস সংবেদনশীলতা
স্ট্রিং মানগুলিতে ফিল্টার করার সময়, প্রতিটি অপারেটরের ডিফল্ট কেস সংবেদনশীলতা আপনার ফলাফলগুলিকে সঠিকভাবে ফিল্টার করার ক্ষেত্রে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে।
নিম্নলিখিত টেবিলটি প্রতিটি অপারেটরের ডিফল্ট কেস সংবেদনশীলতা দেখায়।
ডিফল্ট কেস সংবেদনশীলতা | |
---|---|
=/!= | Case sensitive |
IN/NOT IN | Case sensitive |
LIKE/NOT LIKE | Case insensitive |
CONTAINS (...) | Case sensitive |
REGEXP_MATCH/NOT REGEXP_MATCH | Case sensitive |
আপনি REGEXP_MATCH
এবং NOT REGEXP_MATCH
কেস সংবেদনশীল করার জন্য ডিফল্ট সংবেদনশীলতা পরিবর্তন করতে (?i)
সংশোধক ব্যবহার করতে পারেন, উদাহরণস্বরূপ:
SELECT campaign.id
FROM campaign
WHERE campaign.name REGEXP_MATCH "(?i).*test.*"
আপনি আপনার ডেটা ফিল্টার করতে ব্যবহার করতে পারেন এমন অপারেটরগুলির একটি সম্পূর্ণ তালিকার জন্য কোয়েরি ব্যাকরণের রেফারেন্স দেখুন৷
মূল তারিখ বিভাগ
নিম্নলিখিত সেগমেন্ট ক্ষেত্রগুলিকে মূল তারিখ সেগমেন্ট হিসাবে পরিচিত: segments.date
, segments.week
, segments.month
, segments.quarter
, এবং segments.year
।
আপনি একটি তারিখ বা সময়কাল নির্দিষ্ট করতে আপনার WHERE
ক্লজে মূল তারিখের অংশগুলি ব্যবহার করতে পারেন।
এই উদাহরণ ক্যোয়ারীটি WHERE
ক্লজে segments.date
ক্ষেত্রের জন্য DURING LAST_30_DAYS
নির্দিষ্ট করে:
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
মূল তারিখের অংশগুলি ব্যবহার করার বিষয়ে বিস্তারিত তথ্যের জন্য বিভাজন > মূল তারিখ বিভাগগুলি দেখুন।
ফিল্টারিং নিষিদ্ধ
ফিল্টারিং অনুমোদিত নয়:
- অ-নির্বাচিত সেগমেন্ট ক্ষেত্রে, মূল তারিখের অংশগুলি ছাড়া।
- আদিম (উদাহরণস্বরূপ,
Int64Value
,StringValue
ইত্যাদি) ছাড়া যেকোনও বার্তার ধরনের ক্ষেত্রের ক্ষেত্রে। - আদিম (উদাহরণস্বরূপ,
Int64Value
,StringValue
, ইত্যাদি) ব্যতীত যেকোন বার্তা প্রকারের পুনরাবৃত্ত ক্ষেত্রগুলির বৈশিষ্ট্যগুলিতে।
ধারা দ্বারা ORDER
ধারা ORDER BY
:
- একটি প্রশ্নের মধ্যে একটি ঐচ্ছিক ধারা।
- যে ক্রমে ফলাফল ফেরত দেওয়া হয় তা নির্দিষ্ট করে। অর্ডার এই প্যাটার্ন অনুসরণ করে:
FIELD_NAME
ORDERING_OPTION
(একটি ফাঁকা স্থান দ্বারা পৃথক)। - দুটি বিকল্পের অনুমতি দেয়:
ASC
(আরোহী) বাDESC
(অবরোহী)। ডিফল্ট হচ্ছে আরোহী।
এই উদাহরণ কোয়েরিটি প্রচারাভিযানগুলিকে নিচের ক্রমানুসারে ক্লিকের সংখ্যা অনুসারে অর্ডার করে (সর্বোচ্চ থেকে সর্বনিম্ন):
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
ধারার সাথে ORDER BY
ধারাটি ব্যবহার করতে পারেন।
এই উদাহরণ কোয়েরিটি গত 30 দিনে সর্বাধিক ইম্প্রেশন সহ পাঁচটি প্রচারাভিযান প্রদান করে:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 5
আদেশ নিষেধ
অর্ডার করার অনুমতি নেই:
- অ-নির্বাচিত সম্পদের বৈশিষ্ট্য দ্বারা।
- অ-নির্বাচিত মেট্রিক্স দ্বারা।
- অ-নির্বাচিত সেগমেন্ট দ্বারা।
- এই ক্ষেত্রের প্রকারের জন্য:
-
MESSAGE
- বারবার ক্ষেত্র
- পুনরাবৃত্ত ক্ষেত্রের বৈশিষ্ট্য।
-
LIMIT ধারা
সীমা LIMIT
:
- একটি প্রশ্নের মধ্যে একটি ঐচ্ছিক ধারা।
- ক্যোয়ারী ফেরত ফলাফলের সংখ্যা সীমিত করার অনুমতি দেয়।
এই ধারাটি দরকারী, উদাহরণস্বরূপ, যদি আপনি শুধুমাত্র ফলাফলের একটি নমুনা বা সারাংশে আগ্রহী হন।
এই উদাহরণ ক্যোয়ারী ফলাফলের মোট সংখ্যা 50 এ সীমাবদ্ধ করে:
SELECT
campaign.name,
ad_group.name,
segments.device,
metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50
PARAMETERS ধারা
PARAMETERS
ক্লজ আপনাকে অনুরোধের জন্য মেটা প্যারামিটার নির্দিষ্ট করতে দেয়।
খসড়া অন্তর্ভুক্ত করুন
include_drafts
প্যারামিটার নিয়ন্ত্রণ করে যে ড্রাফ্ট এন্টিটি ফলাফলে অন্তর্ভুক্ত করা হয়েছে কিনা। ডিফল্ট false
. খসড়া সত্তা অন্তর্ভুক্ত করতে এটি true
সেট করুন।
এই উদাহরণ কোয়েরিটি খসড়া প্রচারাভিযান এবং নিয়মিত প্রচারাভিযান উভয়ই প্রদান করে:
SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true
অনির্বাচিত resource_name
বাদ দিন
omit_unselected_resource_names
প্যারামিটার আপনাকে সমস্ত সম্পদের resource_name
ক্ষেত্রটি বাদ দিতে দেয় যেগুলি আপনার SELECT
ক্লজে স্পষ্টভাবে অনুরোধ করা হয়নি। ডিফল্ট false
. আপনি যদি এই প্যারামিটারটি true
সেট করেন, আমরা সুপারিশ করি যে আপনি স্পষ্টভাবে প্রাথমিক সংস্থানের সম্পদের নাম এবং আপনার SELECT
ক্লজের মধ্যে যে কোনো অ্যাট্রিবিউটেড রিসোর্স অনুরোধ করুন।
এই উদাহরণের ক্যোয়ারী campaign.resource_name
বা customer.resource_name
ফিল্ডের কোনোটিই দেয় না, কারণ সেগুলি SELECT
ক্লজে অন্তর্ভুক্ত নয়:
SELECT
campaign.name,
customer.id
FROM campaign
PARAMETERS omit_unselected_resource_names = true
এই উদাহরণের প্রশ্নটি campaign.resource_name
ক্ষেত্রটি ফেরত দেয়, কারণ এটি SELECT
ক্লজে স্পষ্টভাবে অনুরোধ করা হয়েছে:
SELECT
campaign.name,
campaign.resource_name
FROM campaign
PARAMETERS omit_unselected_resource_names = true
মেট্রিক্সে ব্যবহৃত মুদ্রা পরিবর্তন করুন
metrics_currency
প্যারামিটার আপনাকে আপনার SELECT
ক্লজের অন্তর্ভুক্ত একটি মেট্রিক গণনা করার সময় ব্যবহার করার জন্য মুদ্রা নির্দিষ্ট করতে দেয়। ডিফল্ট হল অ্যাকাউন্টের জন্য স্থানীয় মুদ্রা ব্যবহার করা। আপনি যদি এই প্যারামিটার সেট করেন, তাহলে আপনাকে ISO 4217 3-অক্ষরের মুদ্রা কোড ব্যবহার করতে হবে। যেমন: USD, EUR।
এই উদাহরণ কোয়েরি অ্যাকাউন্টের স্থানীয় মুদ্রায় cost_micros মেট্রিক প্রদান করে।
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
এই উদাহরণ কোয়েরি চিলির পেসো (CLP) এ cost_micros মেট্রিক প্রদান করে।
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
PARAMETERS metrics_currency = "CLP"