منتدى العرب التعليمى
أهلاً وسهلاً بأخي


أسعدنا تواجدك بيننا على أمل أن تستمتع وتستفيد
وننتظر مشاركاتك وتفاعلك
فمرحباً بك بين إخوانك وأخواتك
ونسأل الله لك التوفيق والنجاح والتميز
الــــــــــفـــــــــــر عــــــــــــــون الـــمــــصــــــر ى
منتدى العرب التعليمى
أهلاً وسهلاً بأخي


أسعدنا تواجدك بيننا على أمل أن تستمتع وتستفيد
وننتظر مشاركاتك وتفاعلك
فمرحباً بك بين إخوانك وأخواتك
ونسأل الله لك التوفيق والنجاح والتميز
الــــــــــفـــــــــــر عــــــــــــــون الـــمــــصــــــر ى
منتدى العرب التعليمى
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

منتدى العرب التعليمى

منتدى العرب التعليمى تعليمى شامل
 
الرئيسيةأحدث الصورالتسجيلدخول

 

 الربط والأقنعة Concatenation and Aliases MySQL

اذهب الى الأسفل 
كاتب الموضوعرسالة
الويب المصرى
الباشا صاحب المنتدى
الباشا صاحب المنتدى
الويب المصرى


عدد المساهمات : 434
تاريخ التسجيل : 14/11/2010
العمر : 37

الربط والأقنعة Concatenation and Aliases MySQL  Empty
مُساهمةموضوع: الربط والأقنعة Concatenation and Aliases MySQL    الربط والأقنعة Concatenation and Aliases MySQL  Emptyالأحد نوفمبر 21, 2010 1:47 am

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


قبل الدخول فى درس اليوم. ارجوا منك ان لا تفزع من عنوان الموضوع.
(هذا يحدث عادة عند البدأ فى تعريف اى مفهوم جديد)

وان شاء الله سترى ان معنى هذا العنوان شئ بسيط ويمكن فهمه بسهولة بإذن الله.

اولا نبدأ درس اليوم بالربط او مايسمى Concatenation (معناها الحرفى التسلسل)

الربط هو شئ بسيط جدا.

لنفرض ان لدينا داخل احد جداول قاعدة البيانات
حقلين احداهم للإسم الأول, والثانى للأسم الثانى.

فعندما نقوم بإستخراجهم من قاعدة البيانات يتم استخراجهم بالشكل التالى (مثلا)


كود :

SELECT first_name, second_name FROM `table_name`



سيتم عرضهم بجدول بحيث يكون الإسم الأول فى حقل بمفرده والثانى فى حقل اخر بمفرده.
كالشكل التالى كامثال
كود :

first_name second_name
----------------------
Ahmed Ali
Hany Salama

لكن ماذا اذا اردنا وضع الإثنين بحقل واحد؟ هذا هو مايسمى الربط

ويتم بإستخدام دالة تدعى CONCAT

يمكننا إعادة اختيار الحقلين المذكورين اعلاه بالشكل التالى

كود :

SELECT CONCAT(first_name, ' ', second_name) FROM `table_name`



بهذا الشكل, يتم استخراج حقل first_name بعده يتم ادخال المسافة التى تم وضعها بين علامتين التنصيص ' ' (ويمكن ان نضع اى فاصل على حسب الحاجة)
وبعدها يتم استخراج حقل الـ second_name

لكن هناك شئ, انت عندما تقوم بعمل concat لحقلين او اكثر, انت فى الواقع تستخرج قيم جديدة (بمعنى خليط بين عدة جداول وليس جدول واحد)
بالتالى كيف سيتم عرض هذه القيم؟
يعنى عندما استخرجنا الجدولين بالطريقة العادية, تم وضع قيمة الـ first_name تحت حقل الـ first_name وكذلك مع حقل الـ second_name
لكن ماذا عن ناتج عملية الربط؟ يجب ان توضع تحت معرف ما خاص بها.

وهنا يأتى دول الأقنعة او مايعرف بالـ Aliases
والمقصود بالأقنعة هو ان تستخرج قيمة ما من احد الحقول, لكن يتم الوصول اليها عن طريق معرف اخر نعرفه نحن, ويكون هذا المعرف هو قناع لإسم الحقل الحقيقى.

اذن لنعد صياغة الكود الذى استخدمنا به دالة CONCAT بعد ان نقوم بعمل قناع له.

كود :

SELECT CONCAT(first_name, ' ', second_name) AS full_name FROM `table_name`


ماذا سينتج عن هذا الإستعلام؟ سينتج شكل كالتالى
كود :

full_name
Ahmed Ali
Hany Salama



هل اتضح عمل الدالة CONCAT بشكل جيد الأن؟ اتمنى ذلك.

اذن لنتجه قليلا للأقنعة قبل إنهاء الدرس

استخدام الأقنعة فى الأصل, هو لتسهيل عملية الوصول لأحد القيم
كما لاحظنا فى استخدامه مع دالة الـ CONCAT

لكن الأقنعة ايضا يمكن ان تستخدم مع اسامى الجداول (وليس فقط الحقول)
كالتالى كامثال

كود :

SELECT column AS column_1 FROM table_name AS another_table_name




وليس هناك الكثير لنقوله حول الأقنعة لأنه كما ترى فهى بمنتهى البساطة فى صياغتها. وحتى عملها بسيط وجيد ويستخدم بكثرة وفهمه ليس شئ صعب عليك.

لكن اليك ملحوظات سريعة حول الدرس

- الدالة CONCAT لها اخت تسمى CONCAT_WS والحرفين WS اختصار لكلمتين With Separator اى, مع الفاصل.
واستخدامها, هو لوضع فاصل ثابت, يتم فصل كل الجداول التى يتم ربطها به.
كالتالى مثلا

كود :

SELECT CONCAT_WS(' ,', column_1, column_2, column_3) AS columns FROM `table_name`


المعطى الأول للدالة, هو الفاصل نفسه وهو فى المثال اعلاه عبارة عن مسافة وعلامة فاصلة.
وبقية المعطيات هى اسامى الحقول التى سيتم دمجهم ببعض
واحد مميزات هذه الدالة ايضا, انها سوف تتجاهل اى بيانات تحتوى على القيمة NULL
* احرف الأقنعة (اى اسم الـ Alias) يمكن ان يصل الى 255 حرف, ومع العلم ايضا انه اسم الـ alias يكون حساس تجاه حالة الأحرف, يعنى A ليس مثله مثل a
* المصطلح AS هو مصطلح اختيارى قمت بوضعه فى الشرح لجعل الأمور اكثر وضوحا ليس الا, (انا شخصيا افضل استخدامه, لا يوجد سبب لهذا اكثر من انها مسألة تعود وراحة نفسية, اشعر ان هذا يسهل على فهم الكود عندما اعود للعمل معه بعد فترة من كتابته)
لكن يمكنك عدم استخدامه

كود :

SELECT column_name alias_name ...




اتمنى يكون الدرس كان واضح بكل جوانبه, واراكم بالدرس المقبل بإذن الله.

المصدر: [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]



توقيع teacher86
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://egypt1.forumegypt.net
 
الربط والأقنعة Concatenation and Aliases MySQL
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» خاتمة دروة MYSQL
» استخدام المشروطات Where clause in MYSQL
» لمحة بسيطة عن MySql
» دوال النصوص فى MySQL
» الدوال الرقمية فى MYSQL

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى العرب التعليمى :: منتدى البرمجة والتصميم والتطوير :: قسم قواعد البيانات :: قسم دورة Microsoft my SQL-
انتقل الى: