আমি ইতিমধ্যে এই প্রশ্নের উত্তরটি ইতিমধ্যে জানি, তবে আমি সবসময় মনে করি যদিও এই বিষয়টি নিয়ে আমার আরও কিছু করা দরকার।
আমার বোধগম্যতাটি হ'ল সাধারনত বলতে গেলে, একটি একক সূচক যা আপনাকে যে কোনও সময়ে অনুসন্ধান করা / বাছাই করতে পারে এমন সমস্ত ক্ষেত্রকে অন্তর্ভুক্ত করে কার্যকর হতে পারে না, তবুও আমি এই ধরণের জিনিসটি দেখেছি। যেমনটি ছিল, কেউ ভেবেছিল, "আচ্ছা, আমরা যদি কেবলমাত্র এই সমস্ত জিনিস একটি সূচীতে রেখে দিই, তবে সত্যিকারের কিছু ক্যোয়ারী চালানোর জন্য কোনও কার্যনির্বাহী পরিকল্পনা না দেখে ডেটাবেসগুলি এটির প্রয়োজনীয় যা তা খুঁজে পেতে এটি ব্যবহার করতে পারে"।
যেমন একটি টেবিল কল্পনা করুন:
id int pk/uid
name varchar(50)
customerId int (foreign key)
dateCreated datetime
আমি name
, customerId
এবং dateCreated
ক্ষেত্রগুলি সহ একটি একক সূচি দেখতে পাচ্ছি ।
তবে আমার বোধগম্যতা হল যে এই জাতীয় সূচকটি কোনও প্রশ্নের মতো ব্যবহার করা হবে না, উদাহরণস্বরূপ:
SELECT [id], [name], [customerId], [dateCreated]
FROM Representatives WHERE customerId=1
ORDER BY dateCreated
যেমন একটি কোয়েরি জন্য, এটি আমার মনে হচ্ছে যে ভালো ধারণা সহ একটি সূচক হবে customerId
এবং dateCreated
ক্ষেত্র, সঙ্গে customerId
ক্ষেত্র হচ্ছে 'প্রথম'। এটি এমন একটি সূচি তৈরি করবে যাতে ডেটা এমনভাবে সংঘবদ্ধ হয় যাতে এই ক্যোয়ারীটি যা প্রয়োজন তা দ্রুত সন্ধান করতে পারে - যাতে এটির প্রয়োজন হয়।
আমি আরেকটি জিনিস, সম্ভবত প্রথম হিসাবে প্রায়শই ঘন ঘন, প্রতিটি ক্ষেত্রের পৃথক সূচক; তাই, এক প্রতিটি name
, customerId
এবং dateCreated
ক্ষেত্র।
প্রথম উদাহরণের মতো নয়, এই ধরণের ব্যবস্থাটি আমার কাছে মাঝে মাঝে কমপক্ষে আংশিকভাবে কার্যকর বলে মনে হয়; ক্যোয়ারীর সম্পাদন পরিকল্পনায় দেখাতে পারে যে কমপক্ষে এটি customerId
রেকর্ডগুলি নির্বাচন করতে সূচকটি ব্যবহার করছে , তবে তারা dateCreated
ক্ষেত্রের সাথে সূচিটি তাদের সাজানোর জন্য ব্যবহার করছে না ।
আমি জানি এটি একটি বিস্তৃত প্রশ্ন, কারণ কোনও নির্দিষ্ট টেবিলের নির্দিষ্ট সেটটিতে যে কোনও নির্দিষ্ট প্রশ্নের সুনির্দিষ্ট উত্তর সাধারণত কার্যকরভাবে দেখা হয় যে এটি কার্যকর করতে চলেছে পরিকল্পনাগুলি কী বলেছে তা দেখার জন্য এবং অন্যথায় সারণী (গুলি) এবং বিশদগুলির বিবরণ গ্রহণ করুন অ্যাকাউন্ট। এছাড়াও, আমি জানি যে এটির জন্য কোনও নির্দিষ্ট সূচক বজায় রাখার ওভারহেডের বিপরীতে প্রায়শই কোনও ক্যোয়ারী চালানো যেতে পারে তার উপর নির্ভর করে।
তবে আমি অনুমান করি যে আমি যা জিজ্ঞাসা করছি সূচকগুলির জন্য একটি সাধারণ 'সূচনা পয়েন্ট' হিসাবে, নির্দিষ্ট, প্রায়শই টানা জিজ্ঞাসাগুলির জন্য নির্দিষ্ট সূচী রাখার ধারণা এবং যেখানে বা শৃঙ্খলে বা নির্দেশের বিধি অনুসারে ক্ষেত্রগুলিতে অর্থবোধ করা যায়?