একটি নির্দিষ্ট লেবেল বা ক্ষেত্রের মান সহ ফাইলগুলির জন্য অনুসন্ধান করুন৷

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

লেবেল ক্ষেত্রের প্রকার

Google ড্রাইভ লেবেল ক্ষেত্রগুলি দৃঢ়ভাবে টাইপ করা হয়েছে প্রতিটি প্রকারের সাথে বিভিন্ন সূচীকরণ এবং অনুসন্ধানের শব্দার্থকে সমর্থন করে৷ নিম্নলিখিত সারণী উপলব্ধ ডেটা প্রকারগুলি দেখায়।

টাইপ লেবেল টাইপ বিকল্প সমর্থিত অনুসন্ধান অপারেটর
পাঠ্য টেক্সট অপশন is null, is not null, =, contains, starts with
দীর্ঘ পাঠ্য লংটেক্সট অপশন is null, is not null, contains
পূর্ণসংখ্যা IntegerOptions is null, is not null, =, !=, <, >, <=, >=
তারিখ তারিখ বিকল্প is null, is not null, =, !=, <, >, <=, >=
নির্বাচন সিলেকশন অপশন is null, is not null, =, !=
ব্যবহারকারী ব্যবহারকারীর বিকল্প is null, is not null, =, !=
নির্বাচনের তালিকা নির্বাচনের বিকল্প (সর্বোচ্চ_এন্ট্রি > 1 সহ) is null, is not null, in, not in
ব্যবহারকারীর তালিকা ব্যবহারকারীর বিকল্প (সর্বোচ্চ_এন্ট্রি > 1 সহ) is null, is not null, in, not in

1. একটি লেবেল বা ক্ষেত্রের উপস্থিতির উপর ভিত্তি করে অনুসন্ধান করুন৷

আপনি আইটেমগুলির জন্য অনুসন্ধান করতে পারেন যেখানে একটি নির্দিষ্ট লেবেল প্রয়োগ করা হয়েছে (বা করা হয়নি):

  • 'labels/contract' in labels
  • not 'labels/contract' in labels

আপনি এমন আইটেমগুলির জন্যও অনুসন্ধান করতে পারেন যেখানে একটি নির্দিষ্ট ক্ষেত্র সেট করা হয়েছে (বা করা হয়নি):

  • labels/contract.comment IS NOT NULL
  • labels/contract.comment IS NULL

2. একক-মূল্যবান ক্ষেত্রগুলির উপর ভিত্তি করে অনুসন্ধান করুন৷

আপনি প্রত্যাশিত ক্ষেত্রের মান মেলে অনুসন্ধান প্রশ্ন লিখতে পারেন। নিম্নলিখিত সারণীটি বৈধ ক্ষেত্রের প্রশ্নগুলি দেখায়:

আপনি কি জিজ্ঞাসা করতে চান ক্যোয়ারী স্ট্রিং
আইটেম যেখানে মন্তব্য "হ্যালো" সেট করা আছে labels/contract.comment = 'hello'
ফাইল যেখানে মন্তব্য "হ্যালো" দিয়ে শুরু হয় labels/contract.comment STARTS WITH 'hello'
ফাইল যেখানে স্ট্যাটাস নির্বাহ করা হয় labels/contract.status = 'executed'
ফাইল যেখানে স্ট্যাটাস কার্যকর করা হয় না labels/contract.status != 'executed'
ফাইল যেখানে execution_date একটি নির্দিষ্ট তারিখের আগে labels/contract.execution_date < '2020-06-22'
ফাইল যেখানে value_usd (পূর্ণসংখ্যা) একটি নির্দিষ্ট মানের থেকে কম labels/contract.value_usd < 2000
ফাইল যেখানে client_contact একটি নির্দিষ্ট ইমেল ঠিকানায় সেট করা আছে labels/contract.client_contact = 'alex@altostrat.com'

3. বহুমূল্য ক্ষেত্র সহ ক্ষেত্রগুলির উপর ভিত্তি করে অনুসন্ধান করুন (যেমন ListOptions.max_entries > 1)

একাধিক মান সমর্থন করে এমন ক্ষেত্রগুলি শুধুমাত্র IN অপারেটর ব্যবহার করে জিজ্ঞাসা করা যেতে পারে:

  • ' EMAIL_ADDRESS ' IN labels/project.project_leads
  • NOT ' EMAIL_ADDRESS ' IN labels/project.project_leads

উদাহরণ

নিম্নলিখিত কোড নমুনা দেখায় কিভাবে একটি ড্রাইভ ফাইল সম্পদ থেকে একটি নির্দিষ্ট লেবেল বা ক্ষেত্র মান সহ সমস্ত ফাইল তালিকাভুক্ত করতে এক বা একাধিক labelId ব্যবহার করতে হয়৷ এটি files.list পদ্ধতিও ব্যবহার করে। অনুরোধের বডি খালি হতে হবে।

আপনি যদি প্রতিক্রিয়াতে labelInfo অন্তর্ভুক্ত করতে চান তবে আপনাকে অবশ্যই উল্লেখ করতে হবে:

  • আইডিগুলির একটি কমা দ্বারা পৃথক করা তালিকা হিসাবে includeLabels

  • fields প্যারামিটারে labelInfo দ্বারা বোঝানোর জন্য যে আপনি labelInfo includeLabels অন্তর্ভুক্ত করতে চান।

সফল হলে, প্রতিক্রিয়া বডিতে ফাইলের তালিকা থাকে।

জাভা

List<File> fileList = driveService.files().list().setIncludeLabels("LABEL_1_ID,LABEL_2_ID").setFields("items(labelInfo, id)").setQ("'labels/LABEL_1_ID' in labels and 'labels/LABEL_2_ID' in labels").execute().getItems();

পাইথন

file_list = drive_service.files().list(includeLabels="LABEL_1_ID,LABEL_2_ID", q="'labels/LABEL_1_ID' in labels and 'labels/LABEL_2_ID' in labels", fields="items(labelInfo, id)").execute();

Node.js

/**
* Search for Drive files with specific labels
* @return{obj} file list with labelInfo
**/
async function searchForFileWithLabels() {
  // Get credentials and build service
  // TODO (developer) - Use appropriate auth mechanism for your app

  const {GoogleAuth} = require('google-auth-library');
  const {google} = require('googleapis');

  const auth = new GoogleAuth({scopes: 'https://www.googleapis.com/auth/drive'});
  const service = google.drive({version: 'v3', auth});
  try {
    const fileList = await service.files.list({
      includeLabels: 'LABEL_1_ID,LABEL_2_ID',
      q: '\'labels/LABEL_1_ID\' in labels and \'labels/LABEL_2_ID\' in labels',
      fields:'files(labelInfo, id)',
    });
    return file;
  } catch (err) {
    // TODO (developer) - Handle error
    throw err;
  }

নিম্নলিখিতগুলি প্রতিস্থাপন করুন:

  • LABEL_1_ID : একটি লেবেলের প্রথম labelId যা ফেরত দিতে হবে।
  • LABEL_2_ID : ফেরত দেওয়ার জন্য একটি লেবেলের দ্বিতীয় labelId