تخطي إلى المحتوى الرئيسي
الدعم
تسجيل الدخول باستخدام حساب Microsoft
تسجيل الدخول أو إنشاء حساب.
مرحباً،
تحديد استخدام حساب مختلف!
لديك حسابات متعددة
اختر الحساب الذي تريد تسجيل الدخول باستخدامه.
المسندات ALL أو DISTINCT أو DISTINCTROW أو TOP

يحدد السجلات المحددة باستخدام استعلامات SQL.

بناء الجملة

SELECT [ALL | DISTINCT | DISTINCTROW | [TOP n [PERCENT]]]
جدول FROM

تحتوي عبارة SELECT التي تحتوي على هذه التقييمات على الأجزاء التالية:

الجزء

الوصف

ALL

يفترض إذا لم تقم بتضمين إحدى دالات التقييم. يحدد مشغل قاعدة بيانات Microsoft Access جميع السجلات التي تفي بالشروط في عبارة SQL. المثالان التاليان مكافئان ويعيدان جميع السجلات من جدول الموظفين:

SELECT ALL *
FROM Employees
ORDER BY EmployeeID;
SELECT *
FROM Employees
ORDER BY EmployeeID;

DISTINCT

حذف السجلات التي تحتوي على بيانات مكررة في الحقول المحددة. لتضمينها في نتائج الاستعلام، يجب أن تكون قيم كل حقل مدرج في عبارة SELECT فريدة. على سبيل المثال، قد يكون للعديد من الموظفين المدرجين في جدول "الموظفون" نفس اسم العائلة. إذا احتوى سجلان على Smith في الحقل LastName، فإن عبارة SQL التالية ترجع سجلا واحدا فقط يحتوي على Smith:

SELECT DISTINCT LastName
FROM Employees;

إذا حذفت DISTINCT، يقوم هذا الاستعلام بإرجاع كل من سجلات Smith.

إذا كانت عبارة SELECT تحتوي على أكثر من حقل واحد، فيجب أن تكون مجموعة القيم من جميع الحقول فريدة لسجل معين ليتم تضمينه في النتائج.

إخراج استعلام يستخدم DISTINCT غير قابل للتحديث ولا يعكس التغييرات اللاحقة التي أجراها مستخدمون آخرون.

DISTINCTROW

حذف البيانات استنادا إلى السجلات المكررة بالكامل، وليس فقط الحقول المكررة. على سبيل المثال، يمكنك إنشاء استعلام ينضم إلى جدولي العملاء والطلبات في حقل CustomerID. لا يحتوي جدول العملاء على حقول CustomerID مكررة، ولكن جدول الطلبات لا يحتوي عليه لأن كل عميل يمكن أن يكون لديه العديد من الطلبات. يوضح بيان SQL التالي كيف يمكنك استخدام DISTINCTROW لإنتاج قائمة بالشركات التي لديها طلب واحد على الأقل ولكن دون أي تفاصيل حول هذه الطلبات:

SELECT DISTINCTROW CompanyName
FROM Customers INNER JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY CompanyName;

إذا حذفت DISTINCTROW، فإن هذا الاستعلام ينتج صفوفا متعددة لكل شركة لديها أكثر من طلب واحد.

يكون ل DISTINCTROW تأثير فقط عند تحديد حقول من بعض الجداول المستخدمة في الاستعلام وليس كلها. يتم تجاهل DISTINCTROW إذا كان الاستعلام يتضمن جدولا واحدا فقط، أو إذا قمت بإخراج الحقول من جميع الجداول.

TOP n [PERCENT]

إرجاع عدد معين من السجلات التي تقع في أعلى النطاق المحدد بواسطة عبارة ORDER BY أو أسفله. لنفترض أنك تريد أسماء أفضل 25 طالبا من الفصل الدراسي 1994:

SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage DESC;

إذا لم تقم بتضمين عبارة ORDER BY، فسيرجع الاستعلام مجموعة عشوائية من 25 سجلا من جدول الطلاب تفي بجملة WHERE.

لا تختار دالة التقييم TOP بين القيم المتساوية. في المثال السابق، إذا كانت متوسطات نقاط الصف العليا الخامسة والعشرين والسادسة والعشرين هي نفسها، فسيرجع الاستعلام 26 سجلا.

يمكنك أيضا استخدام الكلمة المحجوزة PERCENT لإرجاع نسبة مئوية معينة من السجلات التي تقع في أعلى النطاق المحدد بواسطة عبارة ORDER BY أو أسفله. لنفترض أنه بدلا من أعلى 25 طالبا، تريد النسبة المئوية الدنيا من الفصل الدراسي وهي 10 في المائة:

SELECT TOP 10 PERCENT
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage ASC;

تحدد دالة تقييم ASC إرجاع القيم السفلية. يجب أن تكون القيمة التي تتبع TOP عددا صحيحا غير موقع.

لا يؤثر TOP على ما إذا كان الاستعلام قابلا للتحديث أم لا.

table

اسم الجدول الذي يتم استرداد السجلات منه.



هل تحتاج إلى مزيد من المساعدة؟

الخروج من الخيارات إضافية؟

استكشف مزايا الاشتراك، واستعرض الدورات التدريبية، وتعرف على كيفية تأمين جهازك، والمزيد.

تساعدك المجتمعات على طرح الأسئلة والإجابة عليها، وتقديم الملاحظات، وسماعها من الخبراء ذوي الاطلاع الواسع.

هل كانت المعلومات مفيدة؟

ما مدى رضاك عن جودة اللغة؟
ما الذي أثّر في تجربتك؟
بالضغط على "إرسال"، سيتم استخدام ملاحظاتك لتحسين منتجات Microsoft وخدماتها. سيتمكن مسؤول تكنولوجيا المعلومات لديك من جمع هذه البيانات. بيان الخصوصية.

نشكرك على ملاحظاتك!

×