it-swarm.asia

ماذا يشير مصطلح "إسقاط" في استعلام SQL (أو عرض التعريف)

في مستند Oracle The Query Optimizer ، تحت عرض الدمج ، وجدت المعلومات التالية

ينطبق تحسين دمج طريقة العرض على طرق العرض التي تحتوي على تحديدات فقط إسقاطات والانضمام. أي أن العروض القابلة للدمج لا تحتوي على عوامل تعيين ووظائف مجمعة و DISTINCT و GROUP BY و CONNECT BY وما إلى ذلك. (منجم التأكيد)

ومع ذلك ، لا يسعني إلا أن أخمن ما يشير إليه مثل هذا الإسقاط.

15
René Nyffenegger

في الجبر الارتباطي ، يعني الإسقاط جمع مجموعة فرعية من الأعمدة لاستخدامها في العمليات ، أي الإسقاط هو قائمة الأعمدة المحددة.

في خطوة مُحسِّن طلب البحث ، سيظهر الإسقاط نفسه كمنطقة تخزين مؤقت أو التخزين المؤقت لبعض الوصف الذي يحتوي على مجموعة فرعية من الأعمدة من الجدول أو عامل التشغيل الأساسي ، أو طريقة عرض منطقية تستند إلى تلك الأعمدة التي تستخدمها العمليات اللاحقة.

في طريقة العرض ، يساوي الإسقاط قائمة الأعمدة المحددة في الاستعلام الكامن وراء العرض.

18
ConcernedOfTunbridgeWells

الإسقاط يشير إلى تلك المجموعة الفرعية من مجموعة جميع الأعمدة الموجودة في الجدول ، والتي تريد إرجاعها. يمكن أن تتراوح في أي مكان من 0 ** حتى المجموعة الكاملة.

هناك "مجموعتان" في الجدول تتوافق مع بعدين للجدول. يحتوي كل جدول على مجموعة من أعمدة بالإضافة إلى مجموعة الصفوف . يمكن العثور على كل قيمة فردية في الجدول عند تقاطع محدد من هاتين المجموعتين *. ومع ذلك ، لا يتم العثور على القيمة الخاصة بك عن طريق "الانتقال إلى" عنوان ، مثل T6 ، بالطريقة التي تفعلها مع Excel.

لا يوجد ترتيب متأصل في الجداول العلائقية. من المهم أن نتذكر. بدلاً من ذلك ، لاسترداد قيمة واحدة ، يمكنك تحديد مجموعة فرعية من الأعمدة (واحدة في هذه الحالة) ومجموعة فرعية من الصفوف (واحدة في هذه الحالة). لتحديد مجموعة فرعية من عمود واحد من جميع تلك المتاحة ، ما عليك سوى معرفة اسمها ، وكذلك اسم الجدول. سيكون اسم العمود فريدًا داخل جدوله.

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

فكر في الأمر كما لو أن طالبًا جامعيًا فقد حقيبة ظهره. دعنا نقول أن الرجل فقدها. اتصل به ضاعًا ووجدته ، وتقول المرأة الحاضرة "نعم ، لدينا بضع حقائب ظهر. هل يمكنك وصفها؟" تقول "حسنًا ، إنها زرقاء؟". ردت عليها "هل تسألني أم تخبرني" ، ثم تقول: "لدي ثمانية ألوان زرقاء ، يجب أن أفعل أفضل من ذلك ، ولم تكن متأكدًا من ذلك". تقول "دعنا نرى ، أم ، نعم! لقد كان كتاب الرياضيات 1010 فيه." "جيد ، أنت الآن إلى أربعة." ثم تتذكر أنه من المفترض أن تقابل صديقتك ، لوسي ، في 15 دقيقة ، وهذا أثار ذاكرة أخرى - في الوقت الذي شعرت فيه بالملل في الرياضيات 1010 وكتبت ، بأحرف صغيرة حقيقية في الجزء السفلي من حقيبة الظهر ، "أنا أحب لوسي ". لقد قلبتهم وتأكدت بما يكفي ، تقول "الثالثة تقول" أنا أحب لوسي "عليها. تعال واستلمها ، ريكي .

الإسقاط يمكن تشبيهه بقول ما الذي فقدته - حقيبة ظهر. التحديد يمكن تشبيهه بوصف سماته : إنه أزرق ولديه كتاب رياضي 1010 بداخله و "أحب لوسي "مكتوب على القاع.

تفعل الشيء نفسه مع SQL. أولاً ، ما نوع المعلومات التي تريد رؤيتها. ثانيًا ، معايير تصف أيًا منها أو تلك التي تريد رؤيتها. هذه تسمى المسندات أو عبارات الحقيقة . وهي صحيحة لعضو واحد أو أكثر في المجموعة. إذا لم تكن كذلك ، فإنها لا تُرجع أي قيم.

* توفر بعض تطبيقات SQL الخاصة بالموردين وسائل لكسر هذه القواعد ، مثل الجداول المتداخلة في Oracle. ومع ذلك ، لا تزال الجداول القياسية ثنائية الأبعاد هي الشكل السائد.

** كتب سي جيه ديت مقالة مثيرة للاهتمام بعنوان "جدول بلا أعمدة". لقد وجدت أنه يستحق القراءة ، كما أفعل معظم مقالاته "كتابات" كثيرة. أوصي بهم بشدة!

13
user6612