Presentation is loading. Please wait.

Presentation is loading. Please wait.

مقدمة قواعد بيانات - أوراكل الفـصـل الــرابــع دوال الصف الواحد أ. جمانه الحازمي.

Similar presentations


Presentation on theme: "مقدمة قواعد بيانات - أوراكل الفـصـل الــرابــع دوال الصف الواحد أ. جمانه الحازمي."— Presentation transcript:

1 مقدمة قواعد بيانات - أوراكل الفـصـل الــرابــع دوال الصف الواحد أ. جمانه الحازمي

2 أنواع الدوال SQL Functions Single-Row Functions Multiple-Row Functions

3 دوال الصف الواحد Single-Row Functions دوال تتعامل مع بيانات صف واحد فقط وتكون نتيجتها قيمة واحدة فقط تستخدم في أي مكان من جملة SELECT ما عدا جزء FROM تنقسم إلى أربعة أقسام : دوال حرفية Character Functions دوال رقمية Number Functions دوال التاريخ Date Functions دوال التحويل Conversion Functions

4 الدوال الحرفية Character Functions وظيفتهــــاالدالـــــة Function تحويل جميع الحروف إلى حروف صغيرة SmallLOWER(column\expression) تحويل جميع الحروف إلى حروف كبيرة CapitalUPPER(column\expression) تحويل الحرف الأول فقط إلى حرف كبير وباقي الحروف إلى حروف صغيرة INITCAP(column\expression) ربط عمودين أو سلسلتين معاً CONCAT(column1\expression1,column2\expre ssion2) قطع جزء من عمود أو سلسلة بداية من الحرف رقم m وعدد الحروف المقطوعة n SUBSTR(column\expression,m,n) إيجاد عدد حروف السلسلة أو العمود ( الناتج عدد )LENGTH(column\expression) تحديد مكان حرف معين داخل سلسلة أو عمود ( الناتج عدد ) والحرف m يعبر عن الحرف المراد تحديد مكانه INSTR(column\expression,m) ضبط بيانات عمود أو سلسلة ناحية اليمين وذلك بملء حرف معين من اليسار والحرف n لتحديد الطول بعد الضبط LPAD(column\expression,n,’string’) ضبط بيانات عمود أو سلسلة ناحية اليسار وذلك بملء حرف معين من اليمين والحرف n لتحديد الطول بعد الضبط RPAD(column\expression,n,’string’) قطع حرف معين من بداية أو نهاية الكلمة فقط TRIM(‘character’ FROM column\expression)

5 أمثلة على الدوال الحرفية Character Functions Examples النتيجــــةالمثـــــال good bySELECT LOWER(‘GOOD by’) FROM dual; GOOD BYSELECT UPPER(‘GOOD by’) FROM dual; GoodSELECT INITCAP(‘GOOD by’) FROM dual; GOODBYSELECT CONCAT(‘GOOD’, ‘ BY’) FROM dual; OODSELECT SUBSTR(‘GOOD BY’,2,3) FROM dual; 4SELECT LENGTH(‘GOOD’) FROM dual; 4SELECT INSTR(‘GOOD’,’D’) FROM dual; ****AHMEDSELECT LPAD(‘AHMED’,10,’*’)FROM dual; AHMED*****SELECT LPAD(‘AHMED’,10,’*’)FROM dual; AMISELECT TRIM(‘S’ FROM ‘SAMI’) FROM dual;

6 Example 1 SQL>SELECT LOWER(ename), UPPER(job), INITCAP(job), CONCAT(ename,job) FROM emp WHERE sal =3000; CONCAT(ENAME,JOB)INITCAP(JOB)UPPER(JOB)LOWER(ENAME) SCOTTANALYST FORDANALYST Analyst ANALYST scott ford

7 Example 2 SQL>SELECT ename, SUBSTR(ename,2,3), LENGTH(ename), INSTR(ename,’K’) FROM emp WHERE LOWER(job)=‘manager’; INSTR(ENAME,’K’)LENGTH(ENAME) SUBSTR(ENAME,2,3 )ENAME 045045 555555 ONE LAK LAR JONES BLAKE CLARK

8 Example 3 SQL>SELECT ename, TRIM(‘S’ FROM ename), LPAD(ename,10,’*’), RPAD(ename,10,’#’) FROM emp WHERE sal>2500; RPAD(ENAME,10,’*’)LPAD(ENAME,10,’*’)TRIM(‘S’ FROM ENAME) ENAME JONES##### BLAKE##### SCOTT##### KING###### FORD###### *****JONES *****BLAKE *****SCOTT ******KING ******FORD JONE BLAKE COTT KING FORD JONES BLAKE SCOTT KING FORD

9 الدوال الرقمية Number Functions وظيفتهــــاالــدالـــة Function قص عدد معين من الجزء العشري مع تقريب الأعداد إلى أقرب عدد عشري أو إلى عدد صحيح والحرف n يبين عدد الأرقام بعد الفاصلة العشرية ROUND(column\expression,n) قص عدد معين من الجزء العشري بدون تقريب TRUNC (column\expression,n) إيجاد باقي قسمة العدد m على العدد nMOD(m,n)

10 Example 4 SQL>SELECT ROUND(45.923,0), ROUND(45.923,2), ROUND(45.923,-1), ROUND(45.923,-2) FROM dual; ROUND(45.923,-2)ROUND(45.923,-1)ROUND(45.923,2)ROUND(45.923,0) 05045.9246

11 Example 5 SQL>SELECT TRUNC(45.923,0), TRUNC(45.923,2), TRUNC(45.923,-1), TRUNC(45.923,-2) FROM dual; TRUNC(45.923,-2)TRUNC(45.923,-1)TRUNC(45.923,2)TRUNC(45.923,0) 04045.9245

12 Example 6 SQL>SELECT ename, sal, comm, MOD(sal,comm) FROM emp WHERE sal=1600; MOD(SAL,COMM)COMMSALENAME 1003001600ALLEN

13 دوال التاريخ Date Functions وظيفتهــــاالدالـــــة Function عرض تاريخ النظام الموجود بجهاز الحاسب الآلي ( تاريخ اليوم الحالي )SYSDATE إيجاد عدد الأشهر ين تاريخين MONTHS_BETWEEN(date1,date2) إضافة عدد معين من الأشهر على تاريخ معطى ADD_MONTHS(date,n) إيجاد تاريخ يوم معين بعد تاريخ معطى NEXT_DAY(date,’day’) إيجاد آخر يوم في الشهر لتاريخ معطى LAST_DAY(date) تقريب التاريخ لأقرب شهر أو سنة ROUND(date) قص التاريخ لأقرب شهر أو سنة TRUNC(date)

14 Example 7 SQL>SELECT SYSDATE FROM dual; SYSDATE 25-01-2004

15 Example 8 SQL>SELECT empno, hiredate, MONTHS_BETWEEN(sysdate,hiredate) FROM emp WHERE hiredate LIKE ‘%1978’; MONTHS_BETWEEN(SYSDATE,HIREDATE)HIREDATEEMPNO 201.200404 200.071371 19-04-1987 23-05-1987 7788 7876

16 Example 9 SQL>SELECT empno, hiredate, ADD_MONTHS(HIREDATE,6), LAST_DAY(HIREDATE) FROM emp WHERE hiredate LIKE ‘%1978’; LAST_DAY(HIREDATE) ADD_MONTHS(HIREDATE,6)HIREDATEEMPNO 30-04-1987 31-05-1987 19-10-1987 23-11-1987 19-04-1987 23-05-1987 7788 7876

17 Example 10 SQL>SELECT empno, hiredate, NEXT_DAY(hiredate,’FRIDAY’) FROM emp WHERE hiredate LIKE ‘%1978; NEXT_DAY(HIREDATE)HIREDATEEMPNO 24-04-1987 29-05-1987 19-04-1987 23-05-1987 7788 7876

18 دوال التحويل Conversion Functions يوجد أنواع كثيرة من البيانات DATA TYPE بيانات رقمية NUMBER بيانات حرفية CHARACTER بيانات تاريخ DATE دوال التحويل تقوم بتحويل البيانات من نوع إلى آخر وظيفتهــــاالدالـــــة Function تحويل البيانات الرقمية أو بيانات التاريخ إلى بيانات حرفية بشكل معين (FORMAT) حسب الطلب fmt TO_CHAR(DATE\NUMBER,’fmt’) تحويل البيانات الحرفية إلى بيانات من نوع التاريخ بشكل معين (FORMAT) حسب الطلب fmt TO_DATE(CHAR,’fmt’) تحويل البيانات الحرفية إلى بيانات رقمية بشكل معين (FORMAT) حسب الطلب fmt TO_NUMBER(CHAR,’fmt’)

19 Example 11 SQL>SELECT sysdate, TO_CHAR(sysdate,’DD/MM/YYYY’) FROM dual; TO_CHAR(SYSDATE,’DD/MM/YYYY’)SYSDATE 26/01/200426-01-2004

20 Example 12 SQL>SELECT empno, TO_CHAR(hiredate,’DAY “OF” MONTH YYYY HH12:MI:SS AM’) FROM emp WHERE ename=UPPER(‘king’); TO_CHAR(HIREDATE,’DAY “OF” MONTH YYYY HH12:MI:SS AM’)EMPNO TUESDAY OF NOVEMBER 1981 12:00:00 AM7839

21 Example 13 SQL>SELECT empno, TO_CHAR(sal,’$99,999’) salary FROM emp WHERE sal > 2500; SALARYEMPNO $2,975 $2,850 $3,000 $5,000 $3,000 7566 7698 7788 7839 7902

22 Example 14 SQL>SELECT TO_DATE(‘FEBRUARY 22,1981’,’MONTH DD,YYYY’) FROM dual; TO_DATE(‘FEBRUARY 22,1981’,’MONTH DD,YYYY) 22-FEB-1981


Download ppt "مقدمة قواعد بيانات - أوراكل الفـصـل الــرابــع دوال الصف الواحد أ. جمانه الحازمي."

Similar presentations


Ads by Google