الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الدرس التاسع ( سلسلة دروس مبسطة في Sql ) بواسطة م.فرحة

بدأه J.DEV في 27 فبراير 2009 · 0 رد · 2,174 مشاهدة · في قسم لغة الاستفسارات SQL
مشاركة: واتساب X فيسبوك تيليجرام
#1

بسم الله الرحمن الرحيم ....

هنكمل النهاردة ان شاء الله ،،،

الدرس التاسع من سلسلة دروس مبسطة فى ال SQL :

الأول نأخذ فكرة عن علامة اللصق CONCATENATION اللى هى دى (ا ا ) ،،،

بنستخدم عملية اللصق لضم عمودين معا ... لكن ازاى ..؟؟؟

مثلا :

ل

وعندنا جدول EMPLOYEE ، الحقول بتاعته ( SALARY , JOB , L_NAME , F_NAME )

دى الوقت لو قلنا :

SELECT * FROM EMPLOYEE ;

هتكون النتيجة :

SALARY JOB F_NAME L_NAME 
5000 Professor Abdl mohsen 
Hassan

طيب لو عايزين نعمل لصق للعمودين F_NAME و L_NAME لتحسين شكل النتائج ليس الا ،،،

هنكتب كدة :

SELECT F_NAME, L_NAME AS E_NAME ,JOB , SALARY 
FROM EMPLOYEE;

هتكون النتيجة :

SALARY JOB E_NAME 
5000 Professor Hassan Abdl mohsen

طيب ،،، هل ممكن اضافة جملة أو مجموعة حروف تظهر بين العمودين المراد لصقهما .....؟؟؟

ممكن هنقول مثلا :

MONTHLY SALARY اا ' : ONE MONTH SALARY = ' ا| SELECT F_NAME 
FROM EMPLOYEE ;

لاحظ : كلمة MONTHLY ما هى الا ALIAS لذلك يكون اسم العمود الجديد MONTHLY ،،،

MONTHLY 
5000 SALARY = MONTHLY Hassan : 1

اذن ،، ، لو أردنا وضع حروف بين عمودين يراد لصقهما فاننا نكتب هذه الحروف بين SINGLE QUTATION ( ' ……' ) ،،،

كذلك عند وضع تاريخ ،،، لكن الأرقام لا توضع بين علامتى تنصيص مفردتين ...

***************************************

دى الوقت ان شاء الله ندخل فى موضوعنا الأساسى :

الجدول بتاعنا :

EMP table

ENAME JOB MGR EMPNO

KING PRESIDENT ***
7839 
7698 BLAKE MANAGER 7839


7782 CLARK MANAGER 7839

7566 JONES MANAGER 7839 

7654 MARTIN SALESMAN

7698**********************

******************************

لو عندنا جدول زى EMP ،،، لو عايزين نعرف اسم المدير لكل موظف ،

مثلا

BLAKE ،،، نبحث عن رقم MGR الموجود أمامه بالجدول ،،، وجدنا الرقم 7839 ،،، ثم نقارن هذا الرقم بال EMPNO ،،،

فنجد ان الموظف الذى يحمل هذا الرقم هو KING ،

اذن KING هو مدير BLAKE ،، وهكذا ..

بتطبيق المطلوب على كل الموظفين يصبح الأمر صعب ،،، لذلك نستخدم الربط الداخلى لنفس الجدول

اللى هو SELF JOIN ،،،

حتى نتمكن من عرض اسم كل موظف وبجواره اسم مديره ،

ولتنفيذ ذلك ،،، دعنا نتخيل أننا قسمنا جدول EMP الى جدولين منفصلين هما :

جدول WORKER عبارة عن EMPNO ENAME MGR وجدول MANAGER) عبارة عن EMPNO ENAME

من الجداول السابقة نجد أن : هناك علاقة بين MGR و EMPNO ، لأن رقم المدير MGR ما هو الا رقم

موظف من الأرقام الموجودة فى EMPNO ،،،

أصبحت قيم ال MGR هى بعض قيم ال EMPNO ، كما هو الحال فى الربط المتساوى ال EQUIJOIN ،

وعلى ذلك نكتب :

SELECT WORKER . ENAME 11 ' THE MANAGER IS : ' 11 MANAGER . ENAME AS MANAGER 

FROM EMP WORKER , EMP MANAGER 

; WHERE WORKER . MGR = MANAGER . EMPNO

وعلى هذا تكون النتيجة :

MANAGER

BLAKE THE MANAGER IS : KING

...........

............

ان شاء الله يكون الموضوع بسيط ... تمنياتى بالتوفيق ...

شكرا.

م.فرحة

تم تعديل هذه المشاركة بواسطة J.DEV في 27 فبراير 2009 في 07:23

Oracle APEX Consultant@ ClinicForce

Oracle APEX Instructor @ New Horizons Alexandria Branch

00201095775354

00201112355566

ahmed-alsaied@ms.com

My Blog

الإجتماع حول العقيدة ضرورة حياتية ، إذا أردتم التمكين في الأرض

 

 

 

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…