شارك المقالة

لعرض الموظفين في تخصص محدد داخل Oracle نستخدم مقارنة قيمة عمود الوظيفة داخل WHERE. إذا أردت أكثر من تخصص فتمثل IN قائمة القيم المقبولة بوضوح. المطابقة هنا تامة وليست بحثًا عن جزء من الكلمة.

تستخدم الأمثلة جداول التدريب في درس إنشاء جداول وبيانات تدريب Oracle. نفّذ إعدادها مرة واحدة في مخطط تدريب قبل الاستعلامات، حتى تتطابق أسماء الأعمدة والنتائج.

مثال SQL قابل للنسخ

SELECT emp_id, emp_name, job, salary
FROM gc_employees
WHERE job = 'developer'
ORDER BY emp_id;

SELECT emp_id, emp_name, job
FROM gc_employees
WHERE job IN ('developer', 'marketing')
ORDER BY emp_id;

النتائج

يعرض المثال الأول Shrouk وAhmed وNoor لأن الوظيفة المخزنة developer. يضيف المثال الثاني Maryam وOmar من marketing. لا تحتاج أسماء الوظائف إلى معنى خاص داخل SQL؛ هي قيم نصية في بيانات التدريب.

الاقتباس وحالة الأحرف

تكتب القيم النصية بين اقتباسين مفردين. قد تختلف مقارنة developer عن Developer بحسب إعداد المقارنة والبيانات؛ لا تعتمد على تحويل ضمني غير موضح. يمكن تطبيع البيانات أو استعمال LOWER في شرط مدروس عندما تحتاج مطابقة دون اختلاف حالة الأحرف.

المطابقة والبحث بالنمط

استخدم LIKE عندما تريد بداية أو نهاية أو نمطًا، و= للقيمة الكاملة، وIN لمجموعة قيم كاملة. القيمة NULL لا تطابق أي نص في القائمة. إذا أردت إدراج الموظف غير المحدد وظيفيًا فأضف OR job IS NULL وفق حاجة التقرير.

الصور والفيديو من الشرح السابق

الكود النصي أعلاه هو النسخة المصححة؛ قد تختلف المواد المرئية السابقة في أسماء المتغيرات أو طريقة التشغيل.

شاهد أيضًا
مقالات ذات صلة
🚫 مانع الإعلانات مفعل

يجب إيقاف مانع الإعلانات لاستكمال تصفح الموقع