HeadlinesBriefing favicon HeadlinesBriefing.com

لغة Prela للاستعلام: بديل SQL بـ 11 سطرًا

Hacker News •
×

Prela هي لغة استعلام جديدة تُطور حاليًا في UCLA Re PL. اللغة مختلفة عن SQL إلى حد كبير، لكن فكرتها الأساسية بسيطة للغاية. في هذا التدريب القصير، نقوم ببناء نسخة تجريبية من Prela باستخدام Python لفهم مبادئها الأساسية.

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

الشيء الخاص الأول عن Prela هو أنه يستخدم علاقات ثنائية فقط، أي جداول بعمودين. قد يبدو هذا محدودًا للغاية في البداية، لكن من السهل "تثني'' جدولًا واسعًا بعدة أعمدة.

الدافع وراء التركيز على العلاقات الثنائية هو أنها تعمل كدوال. الدوال قوية لأنها قابلة للتركيب، مما يجعلها أطراف بناء البرامج. تُحوّل الدالة كل مدخل إلى مخرج فريد، بينما يمكن للعلاقة أن تُحوّل مدخلًا إلى عدة مخرجات مختلفة. من ناحية ما، يمكن اعتبار العلاقة كدالة غير حاسمة.

يُظهر قوة التركيب الحقيقية عندما نقوم بتسلسل عدة استدعاءات .select. نظرًا لأن الانضمام عبر المفتاح الأجنبي يتطلب دائمًا "حلّ'' معرف ID إلى صف، يقوم Prela بإدراج هذا الخطوة تلقائيًا بحيث يمكنكم كتابة ما يلي، والذي يقرأ فقط كـ "بلد شركة فيلم لفيلم واحد"!

الكيانات الرئيسية: المواقع: UCLA Re PL