230 likes | 579 Views
لغة معالجة البيانات Data Manipulation language (DML). الجزء الأول. لغة معالجة البيانات ( DML ). جمل ال( SQL ) الأساسية في لغة معالجة البيانات ( DML )هي: SELECT INSERT INTO UPDATE DELETE FROM. استعلام الاختيار ( SELECT Query ). ماهو استخدام استعلام الاختيار( SELECT Query )؟
E N D
لغة معالجة البيانات Data Manipulation language (DML) الجزء الأول
لغة معالجة البيانات (DML) • جمل ال(SQL) الأساسية في لغة معالجة البيانات (DML)هي: • SELECT • INSERT INTO • UPDATE • DELETE FROM
استعلام الاختيار (SELECT Query) • ماهو استخدام استعلام الاختيار(SELECT Query)؟ هو استرجاع مجموعة من البيانات أو السجلات من جدول أو اكثر وهذا الاسترجاع ممكن أن يكون مشروط بشرط واحد أو أكثر بالإضافة إلى إمكانية التحكم في ترتيب السجلات. أيضا يمكن استخدامه لتجميع البيانات التي تشترك في خواص معينة ، أي تلخيص البيانات و في هذه الحالة يطلق عليها استعلام تجميع مع العلم بأن هذا الاستعلام لا يغير في قواعد البيانات الأصلية (لا البيانات و لا هيكل القاعدة).
استعلام الاختيار (SELECT Query) • الصيغة العامة لجملة SELECT –FROM SELECT [DISTINCT|ALL] { * | column_expression | [table.] column1[As alias] [,[ table.] column2[As aliase ] [,..]]} FROM table_name [, … ] [WHERE condition] [GROUP BY column_list] [HAVING condition] [ORDER BY column_list [ASC|DESC]];
استعلام الاختيار (SELECT Query) * تتكون عبارة ال SELECT من الأجزاء التالية:
الاستعلام على كل البيانات • الصيغة العامة لاسترجاع كافة البيانات: SELECT {* | column| column_expression [,…]} FROM table_name; • مثال: • STAFF(sno, fname, lname, position, sex, dob, salary, bno) • قومي باسترجاع بيانات الطاقم كاملة من العلاقة السابقة. • الحل: SELECTsno, fname, lname, position, sex, dob, salary, bno FROM staff; أو: SELECT * FROM staff;
الاستعلام على كل البيانات ملاحظة** بالإمكان ترتيب الأعمدة بأي شكل وبدون التقيد بالترتيب الذي صمم به الجدول كما يمكن تكرار ظهور العمود اكثر من مرة. Sno lname position sex DOB salary bno fname SL21 John White Manager M 1-Oct-45 30000 B005 SG37 Ann Beech Assistant 10-Nov-60 F 12000 B003 SG14 David M Ford Supervisor 18000 B003 24-Mar-58 Mary SA9 9000 B007 Howe Assistant F 19-Feb-70 SG5 Susan Brand Manager 13-Jun-40 24000 B003 F
استرجاع بعض المعلومات على البيانات • مثال: • STUDENT (StudentNo, Lname, Fname, Initial, DOB, GPA, Dept) • المطلوب استرجاع البيانات التالية عن كل الطلاب : رقم الطالب – الاسم الأخير – الاسم الأول و المعدل. • الحل: SELECTStudentNo, Fname, Lname,GPA FROM Student;
استرجاع بعض المعلومات على البيانات STUDENT Fname Lname GPA StudentNo Amal Al-Saleh 4170010 3.91 Nora Al-Ghanem 4182000 4.20 Laila Al-Fahad 4.01 4182034 4188134 Amal 3.01 Saod 4189860 Rana Rashed 2.31
استخدام Alias • نستخدم Alias لتغيير عنوان العمود في الناتج فقط من عملية الاستعلام. • الصيغة العامة: SELECT {*|column[AS new_name]|column_expression [,…]} FROM table_name; • مثال: STUDENT (StudentNo, Lname, Fname, Initial, DOB, GPA, Dept) • المطلوب استرجاع رقم الطالب ويكون اسم العمود ”number“ والاسم الأول بحيث يظهر ب“First_name“ والاسم الأخير. • الحل: SELECTStudentNo As number, Fname As First_name, Lname FROM Student;
استخدام Alias • ملاحظة** هذا لا يؤثر على أسماء الحقول في الجداول الاصلية STUDENT First_name Lname number Amal Al-Saleh 4170010 Al-Ghanem Nora 4182000 Laila Al-Fahad 4182034 4188134 Amal Saod 4189860 Rana Rashed
استخدام (DISTINCT) في عملية الاسترجاع • DISTINCT تمنع تكرار الصف. • الصيغة العامة عند استخدام DISTINCT SELECT DISTINCT {*|column|column_expression [,…]} FROM table_name; • مثال: • STAFF(sno, fname, lname, position, sex, dob, salary, bno) • المطلوب استرجاع الرتب الوظيفية التي يشغلها الطاقم. • الحل: SELECTDISTINCT position FROM staff;
استخدام (DISTINCT) في عملية الاسترجاع position position Manager Manager Assistant Assistant Supervisor Supervisor Assistant SELECT DISTINCT position FROM staff; Manager SELECT position FROM staff;
استخدام (DISTINCT) في عملية الاسترجاع • مثال: • User (id ,firstName,lastName,DOB,email,city) 1- المطلوب استرجاع المدن التي يسكنها المستخدمين. • الحل: SELECT DISTINCT city FROM User ;
استخدام (DISTINCT) في عملية الاسترجاع 2- المطلوب استرجاع الأسماء الأخيرة للمستخدمين والمدن بدون تكرار الاسم والمدينة. • الحل: SELECT DISTINCT lastName ,city FROM User ;
عمل عمليات حسابية في جمل الاستعلام • الصيغة العامة: SELECT {*|column|column_expression [,…]} FROM table_name; • عند عمل عمليات حسابية على الأعمدة في الجدول فإن ذلك لن يؤثر على الأعمدة الأصلية في الجدول. • الأعمدة التي يعمل عليها عمليات حسابية يجب أن تكون من نوع رقمي. • يفضل اعطاء العمود المحسوب اسم باستخدامAs لأنه سيعطى اسم عشوائي غير مفهوم. • العملية الحسابية تكون على مستوى العمود و يتم تنفيذها على كل السجلات.
عمل عمليات حسابية في جمل الاستعلام • العمليات الحسابية التي يمكن عملها على الأعمدة
عمل عمليات حسابية في جمل الاستعلام • مثال: STAFF(sno, fname, lname, position, sex, dob, salary, bno) • المطلوب استرجاع رقم الموظف و راتب كل موظف مجموعا عليه 10 • الحل: SELECTsno, salary+10 As sal FROMSTAFF;
عمل عمليات حسابية في جمل الاستعلام Sno sno sal SL21 30010 SG37 12010 SG14 18010 SA9 9010 SG5 24010