سؤال

شكل ويكيبيديا:http://en.wikipedia.org/wiki/index_(database)

تمدد بعض قواعد البيانات قوة الفهرسة عن طريق السماح بإنشاء الفهارس على الوظائف أو التعبيرات. على سبيل المثال ، يمكن إنشاء فهرس في العلوي (Last_Name) ، والذي سيخزن فقط إصدارات الحالة العليا من حقل Last_Name في الفهرس. هناك خيار آخر مدعوم أحيانًا وهو استخدام فهارس "مرشح" ، حيث يتم إنشاء إدخالات الفهرس فقط لتلك السجلات التي تلبي بعض التعبير المشروط. يتمثل أحد الجوانب الأخرى في المرونة في السماح بفهرسة على الوظائف المعرفة من قبل المستخدم ، وكذلك التعبيرات التي تشكلت من مجموعة متنوعة من الوظائف المدمجة.

ما هي قواعد البيانات التي تدعم الفهارس المرنة التي يمكن أن تكون:

  • في العمود المحسوب مثل: (Col1 + Col2) * 100
  • الفهارس المصفاة.
  • الفهرسة على وظائف محددة المستخدم.

وما هي المصطلحات المعروفة لهذه الميزة؟

هل كانت مفيدة؟

المحلول

في Oracle يسمى الفهارس القائمة على الوظيفة.

للتصفية ، يمكنك أن تكون صعبًا وإنشاء وظيفة تقوم بإرجاع القيمة إذا كان المرشح يتطابق مع الفلتر أو لا ، إذا لم يكن كذلك. لا يتم تخزين الفهود في فهارس BTREE بحيث يتم ترشيح الفهرس بشكل أساسي. عليك فقط التأكد من استخدام نفس الوظيفة في استفساراتك.

أنا أؤمن بخادم SQL ، يمكنك إنشاء عمود وفهرس محسوب.

نصائح أخرى

SQL Server 2000+ (على الأقل) يدعم الفهارس على الأعمدة القائمة على الوظائف والأعمدة المحسوبة. يمكن تكرار الفهارس على الوظائف باستخدام طرق العرض المفهرسة على الوظائف.

هناك شروط كما هو الحال دائمًا ولكن بشكل أساسي حول الحتمية (والتي ربما تكون عالمية)

SQL Server 2008+ لديه فهارس ترشيح.

AFAIK ، لا يوجد مصطلح خاص. انهم مجرد فهارس.

على حد علمي ، تدعم جميع RDBSS الرئيسية هذه الميزة. لقد استخدمته شخصيًا على MySQL و PostgreSQL ، لكنني سأصاب بالصدمة إذا لم يكن متاحًا في MSSQL و Oracle.

لسوء الحظ ، أنا لا أعرف أي مصطلح خاص لهذا الغرض.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top