فهم MySQL Order By مع Python
تعتبر MySQL واحدة من أشهر قواعد البيانات المستخدمة في تطوير التطبيقات وبالأخص عند التعامل مع البيانات الكبيرة. في كثير من الأحيان، نحتاج إلى ترتيب البيانات المسترجعة من قاعدة البيانات بشكل معين، وهنا يأتي دور عبارة ORDER BY في MySQL. هذه العبارة تُمكّننا من ترتيب النتائج بناءً على عمود أو أكثر، سواء بترتيب تصاعدي أو تنازلي. في هذا المقال، سنقوم بشرح كيفية استخدام هذه العبارة في MySQL مع تطبيقها عبر لغة البرمجة Python.
استخدام ORDER BY في MySQL
تُستخدم عبارة ORDER BY لترتيب النتائج المسترجعة من قاعدة البيانات. بشكل افتراضي، يتم الترتيب بشكل تصاعدي باستخدام الكلمة المفتاحية ASC، ويمكنك تغيير ذلك إلى ترتيب تنازلي باستخدام الكلمة المفتاحية DESC. على سبيل المثال، إذا كان لدينا جدول يحتوي على بيانات الطلاب ونريد ترتيبهم حسب العمر، فسيكون استعلام MySQL كما يلي:
SELECT * FROM students ORDER BY age ASC;
هذا الاستعلام سيعيد قائمة الطلاب مرتبة تصاعدياً حسب العمر. إذا أردنا ترتيبهم تنازلياً، يمكننا تعديل الاستعلام ليكون:
SELECT * FROM students ORDER BY age DESC;
دمج ORDER BY مع Python
لدمج MySQL مع Python، نحتاج إلى استخدام مكتبة مثل mysql-connector-python. هذه المكتبة تتيح لنا الاتصال بقاعدة البيانات وتنفيذ الاستعلامات بسهولة. إليك مثال على كيفية استخدام ORDER BY في Python:
import mysql.connector
# الاتصال بقاعدة البيانات
conn = mysql.connector.connect(
host='localhost',
user='yourusername',
password='yourpassword',
database='yourdatabase'
)
cursor = conn.cursor()
# تنفيذ استعلام ORDER BY
cursor.execute("SELECT * FROM students ORDER BY age DESC")
# جلب النتائج
results = cursor.fetchall()
# عرض النتائج
for row in results:
print(row)
# إغلاق الاتصال
conn.close()
في هذا المثال، نقوم بالاتصال بقاعدة البيانات باستخدام بيانات الاتصال المناسبة، ثم نقوم بتنفيذ استعلام لترتيب الطلاب حسب العمر بشكل تنازلي. بعد تنفيذ الاستعلام، نقوم بجلب النتائج وعرضها، وأخيراً نقفل الاتصال بقاعدة البيانات.
