شبكة تعلم مع ناو

كيف أستخدم IN لاختيار عدة قيم في SQL؟

تختبر IN ما إذا كانت قيمة العمود تساوي إحدى القيم المذكورة في قائمة. وهي طريقة واضحة لكتابة عدة بدائل للمساواة دون تكرار اسم العمود مع OR في كل مرة. فاختيار فعاليات في مدينتين يمكن كتابته بشرط واحد يحتوي على اسمي المدينتين داخل قوسين، مع الفصل بينهما بفاصلة.

يمكن ربط شرط IN بشرط آخر باستخدام AND. عندها يجب أن يحقق الصف الانتماء إلى القائمة والشرط الإضافي معًا. وجود قيمة داخل القائمة لا يتجاوز الشروط الأخرى في الاستعلام. كما لا تقوم IN بترتيب النتائج بحسب ترتيب القيم المكتوبة داخلها؛ إذا كان ترتيب النتيجة مهمًا، نستخدم ORDER BY بشكل مستقل. تساعد هذه الصيغة على جعل قوائم البدائل القصيرة سهلة القراءة والمراجعة.

مثال

CREATE TABLE events_in_example (id INT, city VARCHAR(30), seats INT);
INSERT INTO events_in_example VALUES (1, 'Amman', 20), (2, 'Cairo', 0), (3, 'Dubai', 10);
SELECT id FROM events_in_example WHERE city IN ('Amman', 'Cairo') AND seats > 0;

باختصار: IN تختبر المساواة مع أحد البدائل، وتبقى الشروط المرتبطة بها مطلوبة.

هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.

اختبر نفسك

خمسة أسئلة سريعة، مع الإجابة والشرح بعد كل سؤال.