SQL SELECT DISTINCT Statement
-
بنتكلم في هذا الدرس عن استخدام SQL SELECT DISTINCT Statement. تستخدم كلمة Distinct لإرجاع القيم المختلفة فقط (في حال وجود قيم نفسها مكرره اكيد ما بترجع باستخدام هذه الكلمة).
طريقة الكتابة SELECT DISTINCT Syntax
SELECT DISTINCT column1, column2, ...
FROM table_name;
يتم تحدد الأعمدة المطلوب ارجاعها بحيث ما تكون مكرره.
مثال
قاعدة البيانات northwind تحتوي على جدول باسم customers. وفي هذا الجدول كل عميل customers له دولة country مسجلة في الجدول. احتمالية التكرار بهذه الحالة واردة، اكيد ممكن يكون أكثر من عميل في نفس المكان.
مثال لإرجاع الدول لجميع العملاء حتي لو في تكرار.
الكود:
select country from customers
النتيجة :
لاحظ عدد rows الراجعة تساوي 91 (الدائرة الحمراء). هذا يعني ان في هذا الجدول يوجد 91 عميل بغض النظر عن دولتهم.
الان نشوف الداتا دون تكرار الدول باستخدام DISTINCT
الكود:
select DISTINCT country from customers
النتيجة:
لاحظ عدد rows يساوي 21 فقط.
ارجاع عدد الصفوف rows باستخدام SQL statement
يمكن استخدام SQL statement لمعرفة عدد الصفوف الموجود باستخدام الامر count
الامر count بشتغل مع عمود معين.
التركيب count Syntax
Select count(column Name)
from table_name;
مثل ما حكينا يجب تحدد اسم column المطلوب معرفة اجمالي records الموجوده.
نطبق مثال:
في المثال السابق عند ارجاع عدد customers بدون distinct كان المجموع يساوي 91 ومع distinct المجموع يساوي 21
نطبق مثال لإرجاع هذه الاعداد عن طريق SQL statement
العدد دون استخدام distinct
الكود:
select count( country) from customers
النتيجة:
الكود بسيط جدا: فقط إضافة كلمة count قبل العمود المطلوب ارجاع العدد.
العدد مع استخدام distinct
select count( distinct country) from customers
النتيجة :
الكود بسيط جدا: فقط إضافة كلمة count قبل العمود المطلوب ارجاع العدد. وفي هذا المثال لان المطلوب ارجاع العدد بدون تكرار، تم ارجاع الدول اولا بدون التكرار، ثم طبقنا الامر count.
في حال تم استخدام اكثر من عمود مع distinct يتم التأكد من عدم التكرار في جميع الأعمدة.
مثال:
select distinct country,CompanyName from customers
النتيجة :
لاحظ بالرغم من استخدام كلمة distinct تم ارجاع القيم المكرره، السبب هو إضافة عمود اسم الشركة. في هذه الحالة يتم التأكد من عدم تكرار قيمة الدولة واسم الشركة مع بعض
اترك تعليقك