تشريح استعلام Polars: مقارنة بناء جملة Polars مقابل SQL | بواسطة بن فيفك
النشرة الإخبارية
Sed ut perspiciatis unde.
الانتقال من Pandas إلى Polars بطريقة سهلة — من خلال التوقف عند SQL.
السر خارج! Polars هو الشيء الأكثر إثارة في المنطقة، والجميع يريد الحصول على شريحة منه 😎
لقد كتبت مؤخرًا منشورًا بعنوان “الأسباب الثلاثة التي جعلتني أتحول بشكل دائم من الباندا إلى القطبية”، لأن هذه إحدى حالات الاستخدام الأكثر شيوعًا لالتقاط Polars – كبديل مباشر لـ Pandas. ومع ذلك، على الرغم من أن هذه هي حالة الاستخدام الأكثر شيوعًا، إلا أن الانتقال من Pandas إلى Polars قد يكون غريبًا بعض الشيء نظرًا للاختلافات الكبيرة في بناء الجملة بين الاثنين.
في مقالتي السابقة على مدونتي، ناقشت كيف تجبر Pandas مستخدميها على إجراء استعلامات البيانات في نهج البرمجة الموجهة للكائنات، في حين تمكن Polars مستخدميها من إجراء استعلامات البيانات في نهج البرمجة الموجهة نحو البيانات، مثل الكثير من SQL. على هذا النحو، على الرغم من أن Polars غالبًا ما تكون بمثابة بديل مباشر لـ Pandas، إذا كنت تحاول تعلم Polars، فمن المرجح أن تكون مقارنتها بـ SQL نقطة بداية أسهل بكثير من مقارنتها بـ Pandas. الهدف من هذا المنشور هو القيام بذلك تمامًا: مقارنة بناء جملة Polars ببناء جملة SQL كمقدمة لبدء تشغيل Polars.
في هذا المنشور، أعرض مقارنة بناء جملة Polars مقابل SQL، من خلال إنشاء مجموعة بيانات لعبة أولاً، ثم عرض مقارنة بناء جملة Polars-to-SQL لثلاثة استعلامات متزايدة التعقيد في مجموعة البيانات تلك.
لاحظ أن منشور المدونة هذا يستخدم Google BigQuery كلغة SQL الخاصة به.
مجموعة بيانات اللعبة المستخدمة في هذا المنشور هي جدول الطلبات وجدول العملاء لبعض المطاعم:
طلبات
| order_date_utc | order_value_usd | customer_id |
|----------------|-----------------|-------------|
| 2024-01-02 | 50 | 001 |
| 2024-01-05 | 30 | 002 |
| 2024-01-20 | 44 | 001 |
| 2024-01-22 | 33 | 003 |
| 2024-01-29 | 25 | 002 |
عملاء
| customer_id | is_premium_customer | name…
رابط المصدر