لغة معالجة البيانات ( dml ) data manipulation language

18
( ات ان ي ب ل ا ة ج ل عا م ة غ لDML ) Data Manipulation Language ث ل ا ي ل ءا ز ج ل ا

Upload: manton

Post on 05-Jan-2016

23 views

Category:

Documents


0 download

DESCRIPTION

لغة معالجة البيانات ( DML ) Data Manipulation Language. الجزء الثالث. إظهار السجلات بترتيب معين باستخدام ( ORDER BY ). في جملة الاستعلام عند استرجاع البيانات يمكننا إظهار البيانات بترتيب تصاعدي( ASC ) أو تنازلي ( DESC ) في العمود الواحد أو مجموعة من الأعمدة وذلك باستخدام جملة ( ORDER BY ) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: لغة معالجة البيانات ( DML ) Data Manipulation Language

البيانات ) معالجة (DMLلغةData Manipulation

Languageالثالث الجزء

Page 2: لغة معالجة البيانات ( DML ) Data Manipulation Language

البيانات إظهار يمكننا البيانات استرجاع عند االستعالم جملة في( تصاعدي تنازلي( )ASCبترتيب أو( DESCأو الواحد العمود في

جملة ) باستخدام وذلك األعمدة من (ORDER BYمجموعة

: االستعالم لجملة العامة الصيغة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];

باستخدام معين بترتيب السجالت إظهار(ORDER BY )

Page 3: لغة معالجة البيانات ( DML ) Data Manipulation Language

:مالحظاتASC و تصاعدي .DESCتعني تنازلي تعني. التصاعدي الترتيب هو واالفتراضي أحدهما نختار نوع باختيار ذلك و حدة على عمود لكل الترتيب نوع تحديد نستطيع

. مختلف بشكل األعمدة نفرز ان نريد كنا إذا عمود كل اسم بعد الترتيب الترتيب عليه يتم الذي العمود داخل قيم هناك كانت فإنها NULLاذا

. االستعالم ناتج أول في تأتي األصغر من التصاعدي الترتيب نوع أن أيضا نالحظ التواريخ ترتيب في

ان بمعنى األحدث التاريخ ستسبق األقدم التواريخ أن يعني األكبر إلىتاريخ 80تسبق 70سنة بحسب تصاعدي مثال رتبنا لو أننا هذا يعني و

العكس و ^ سنا االقل إلى ^ سنا األكبر من الترتيب ان فسيعني الميالد . تنازلي الترتيب في صحيح

باستخدام معين بترتيب السجالت إظهار(ORDER BY )

Page 4: لغة معالجة البيانات ( DML ) Data Manipulation Language

:مثال STAFF(sno, fname, lname, position, sex, dob, salary, bno)

رواتبهم تكون بحيث ورواتبهم الموظفين أسماء استرجاع المطلوبتنازليا .مرتبة

:الحلSELECT sno, fname, lname, salary FROM staff ORDER BY salary DESC;

باستخدام معين بترتيب السجالت إظهار(ORDER BY )

Page 5: لغة معالجة البيانات ( DML ) Data Manipulation Language

عمود من أكثر ترتيب:مثال

Property (PropertyNo, Street, City, postcode, Type, OwnerNo, Rooms, Rent)

بحيث وااليجار والغرف ونوعها العقارات أرقام عرض المطلوبعلى مرتب نوع وكل النوع حيث من مرتبة العقارات تكون

تنازلي الترتيب ويكون األيجار قيمة .حسب:الحل

SELECT propertyNo, type, rooms, rent FROM property ORDER BY type, rent DESC;

باستخدام معين بترتيب السجالت إظهار(ORDER BY )

Page 6: لغة معالجة البيانات ( DML ) Data Manipulation Language

باستخدام معين بترتيب السجالت إظهار(ORDER BY )

PG16

PL94

PG36

PG4

PropertNo

Flat

Flat

Flat

House

Type

4

4

3

3

Rooms Rent

450

400

370

650PA14 House 6 600

Page 7: لغة معالجة البيانات ( DML ) Data Manipulation Language

(Aggregation Function )أو التجميع دوال وهياالستعالم من الراجعة البيانات بتلخيص تقوم التلخيص

. احصائية أو حسابية بطريقة مجموعة ليس و رقمية قيمة يكون االستعالم ناتج

. السابقة االستعالمات في كما سجالت الترتيب أمر استخدام المنطقي من .ORDER BYليس . التلخيص دوال جميع في العمود اسم كتابة من البد

االستعالم داخل التلخيص دوال استخدام(Aggregation Function)

Page 8: لغة معالجة البيانات ( DML ) Data Manipulation Language

: هي التلخيص أو التجميع دوال

:مالحظات الفارغة القيم مستبعدة القيم فستعد العمود اسم كتبنا إذا العد NULLدالة * الشكل بهذا عالمة استخدمنا اذا القيم )*( COUNTأما ستعد العد دالة فإن

الفارغة حتى األعمدة كل داخل NULLكلها

االستعالم داخل التلخيص دوال استخدام(Aggregation Function)

الدالة معناهاSUM المجموع تعيدMAX قيمة أكبر تعيدMIN قيمة أصغر تعيد

COUNT بالعد تقومAVG المتوسط تعيد

Page 9: لغة معالجة البيانات ( DML ) Data Manipulation Language

:مثال Property (PropertyNo, Street, City, postcode, Type, OwnerNo,

Rooms, Rent)

من أكثر إيجارها قيمة التي العقارات عدد إيجاد المطلوب350.

:الحلSELECT COUNT(*) AS count FROM property WHERE rent > 350;

االستعالم داخل التلخيص دوال استخدام(Aggregation Function)

5

count

Page 10: لغة معالجة البيانات ( DML ) Data Manipulation Language

مثال: VIEWING (ClientNo, PropertyNo, ViewDate, Comment)

في شوهدت والتي المختلفة العقارات عدد إيجاد .May 1998المطلوب

الحل:SELECT COUNT(DISTINCT PropertyNo) AS count FROM viewing WHERE Viewdate BETWEEN ‘1-May-98’ AND ‘31-May-98’;

االستعالم داخل التلخيص دوال استخدام(Aggregation Function)

2

count

Page 11: لغة معالجة البيانات ( DML ) Data Manipulation Language

مثال: STAFF(sno, fname, lname, position, sex, dob, salary, bno)

. رواتبهم ومجموع للمدراء الكلي العدد إيجاد المطلوب

الحل:SELECT COUNT(sno) AS count, SUM(salary) AS sum FROM staff WHERE position = ‘Manager’;

االستعالم داخل التلخيص دوال استخدام(Aggregation Function)

2

count

54000

sum

Page 12: لغة معالجة البيانات ( DML ) Data Manipulation Language

مثال: STAFF(sno, fname, lname, position, sex, dob, salary, bno)

رواتب ومتوسط راتب وأكثر راتب أقل إيجاد المطلوبالطاقم

الحل:SELECT MIN(salary) AS min, MAX(salary) AS max, AVG(salary) AS avg

FROM staff;

االستعالم داخل التلخيص دوال استخدام(Aggregation Function)

9000

min

30000

max avg

17000

Page 13: لغة معالجة البيانات ( DML ) Data Manipulation Language

( “ جملة ” يستخدم ألنه تجميع استعالم االستعالم هذه( GROUP BYيسمى استخدام عند. التجميع أو التلخيص دوال استخدام من البد فإنه الجملة

دوال بواسطة تلخيصها تم التي البيانات بتجميع يقوم التجميع استعالم(.Aggregation Functionالتلخيص)

- المجمعة - السجالت من مجموعة االستعالم ناتج أمر .GROUP BYفي األقل على واحد تجميع عمود وجود من بد ال( الترتيب استخدام .ORDER BYيمكن االستعالم( هذا في

: االستعالم لجملة العامة الصيغة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]];

جملة – استخدام التجميع استعالم(GROUP BY)

Page 14: لغة معالجة البيانات ( DML ) Data Manipulation Language

:مثال STAFF(sno, fname, lname, position, sex, dob, salary, bno)

كل في يعملون الذين الموظفين عدد إيجاد المطلوبرواتبهم ومجموع .فرع

:الحلSELECT bno, COUNT(sno) AS count, SUM(salary) AS sum

FROM staff GROUP BY bno;

جملة – استخدام التجميع استعالم(GROUP BY)

B003

bno

3

count sum

54000

B005 2 39000

B007 1 9000

Page 15: لغة معالجة البيانات ( DML ) Data Manipulation Language

جملة – استخدام التجميع استعالم(GROUP BY)

B003

bno

SG5

sno salary

24000

B005 SL21 30000

B007

SL41 9000

3

count sum

54000

2 39000

1 9000

B003

B003

B005

SG14

SG37

SA9 9000

1800012000

Page 16: لغة معالجة البيانات ( DML ) Data Manipulation Language

: االستعالم لجملة العامة الصيغة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]];

شرطين وجود WHEREو HAVINGنالحظ نستخدمWHERE قبل عمود على الشرط تنفيذ نريد كنا إاذا

على بناء المرغوبة السجالت اختيار فيتم التجميع عملية . التجميع عملية تتم ثم الشرط

الشرط عمود HAVINGنستخدم على الشرط تنفيذ نريد كنا إذااختيار ثم أوال التجميع عملية فتتم التجميع عملية بعد

. الشرط على بناء المرغوبة التجميعات

الشرط – جملة استخدام التجميع استعالم(HAVING( )جملة (GROUP BYمع

Page 17: لغة معالجة البيانات ( DML ) Data Manipulation Language

:مثال STAFF(sno, fname, lname, position, sex, dob, salary, bno)

الموظفين عدد إيجاد المطلوب موظف من أكثر فيه يوجد فرع لكل. رواتبهم ومجموع فرع كل في يعملون الذين

:الحلSELECT bno, COUNT(sno) AS count, SUM(salary) AS sum

FROM staff GROUP BY bno HAVING COUNT(sno) > 1;

الشرط – جملة استخدام التجميع استعالم(HAVING( )جملة (GROUP BYمع

B003

bno

3

count sum

54000

B005 2 39000

Page 18: لغة معالجة البيانات ( DML ) Data Manipulation Language

EMPLOYEE(Fname, Lname, SSN, DOB, Address, Sex, salary, DeptNo) DEPARTMENT(Dname, DNo ) PROJECT(PName, PNo, PLocation, Dno) WORKS_ON(SSN, PNo, Hours)

:المطلوبالمشروع رقم عرض المطلوب موظف من أكثر عليه يعمل مشروع لكل

. عليه يعملون الذين الموظفين وعددالحل:

تطبيق