HeadlinesBriefing favicon HeadlinesBriefing.com

Prela কুয়েরি ভাষা: ১১ লাইনের SQL বিকল্প

Hacker News •
×

Prela হচ্ছে একটি নতুন কুয়েরি ভাষা যা UCLA Re PL-এ বিকাশ করা হচ্ছে। এই ভাষা SQL-এর তুলনায় ভালভাবে আলাদা, কিন্তু এর মূল ধারণাগুলি খুবই সহজ। এই সংক্ষিপ্ত টিউটোরিয়ালে, আমরা এর মূল সূত্রগুলি বোঝার জন্য Python-এ প্রেলার একটি প্লে রিলিজ তৈরি করি।

নিচের কুয়েরি প্রতিটি ফিল্ম খুঁজে দেখায় যা একটি আমেরিকান কোম্পানি দ্বারা উৎপাদিত এবং যার শিরোনামে একটি চরিত্রের নাম রয়েছে, ফিল্মের শিরোনাম এবং প্রতিটি কাস্ট মিবার জন্য এলিয়াস আউটপুট করে। মন্তব্য করুন যে সমকক্ষ SQL কুয়েরি ২০ লাইনের বেশি সময় নেয়।

প্রেলার প্রথম বিশেষ বিষয় হলো যে এটি কেবল বাইনারি রিলেশনশিপগুলি ব্যবহার করে, অর্থাৎ দুটি কলামের টেবিল। এটি প্রথমে খুবই সীমিত হিসাবে লাগতে পারে, কিন্তু একাধিক কলাম সমৃদ্ধ একটি টেবিলকে "বিনেরাইজ" করা সহজ।

বাইনারি রিলেশনশিপগুলির উপর ফোকাস করার প্রইরা হলো যে তারা ফাংশনগুলিকে সাধারণীকরণ করে। ফাংশনগুলি শক্তিশালী কারণ তারা সমজুট করা যায়, যা তাদেরকে প্রোগ্রামগুলির নির্মাণ ব্লক হয়ে ওঠে। একটি ফাংশন প্রতিটি ইনপুটকে একটি ইউনিক আউটপুটে ম্যাপ করে, আর একটি রিলেশনশিপ একটি ইনপুটকে একাধিক ভিন্ন আউটপুটে ম্যাপ করতে পারে। কোনো দিক থেকে, একটি রিলেশনশিপ একটি নির্ধারণযোগ্য ফাংশন হিসাবে দেখা যেতে পারে।

কম্পোজিশনের শক্তি সত্যিকারের মতো দেখায় যখন আমরা একাধিক .select কল একত্রে চেইন করি। কারণ ফোরেজি কী দিয়ে যুক্ত করার মাধ্যমে প্রায়ই একটি ID কে একটি রো হিসাবে "রিজলভ" করতে হয়, প্রেলা স্বয়ংক্রিয়ভাবে সেই ধাপটি ইনসার্ট করে যাতে আপনি নিচের মতটি লিখতে পারেন, যা কেবলমান "একটি ফিল্মের কোম্পানির দেশ" এর মতো পড়া যায়!