أساسيات SQL - حل شامل للمبتدئين



ستساعدك مقالة أساسيات SQL الشاملة هذه على بدء استخدام SQL. سيساعدك هذا في الأوامر والاستفسارات الأساسية المطلوبة للمعاملات اليومية.

في عالم اليوم ، البيانات هي كل شيء. ولكن لإدارتها ، يتعين على المرء أن يتقن فن إدارة البيانات. مع ذلك تأتي اللغة ، أي الذي هو الأساس للجميع. SQL هي جوهر قواعد البيانات العلائقية التي يتم استخدامها بين معظم الشركات. من خلال هذه المقالة ، سوف أساعدك في البدء في أساسيات SQL.

سيتم تناول الموضوعات التالية في هذه المقالة:





سنغطي كل فئة من هذه الفئات واحدة تلو الأخرى ، فلنبدأ.

مقدمة في SQL



شعار - أساسيات SQL - Edureka

تم تطوير SQL في IBM بواسطة دونالد دي تشامبرلين و ريمون ف بويس في أوائل السبعينيات. كان هذا يسمى في البداية تتمة ( س مهذب يكون نغليش هذا راي إل عذاب). الهدف الرئيسي من SQL هو تحديث وتخزين ومعالجة واسترجاع البيانات المخزنة في قاعدة بيانات علائقية. على مر السنين ، خضعت SQL للكثير من التغييرات. تمت إضافة الكثير من الوظائف مثل دعم XML والمشغلات والإجراءات المخزنة ومطابقة التعبير العادي والاستعلامات المتكررة والتسلسلات الموحدة وغير ذلك الكثير.

إذن ، كيف تختلف SQL عن MySQL؟



هناك سوء فهم أو لبس بخصوص هذا الموضوعوأود أن أوضح ذلك هنا.

SQL هي لغة قياسية تُستخدم للعمل على قاعدة البيانات في شكل استعلامات. لكن MySQL هو نظام إدارة قاعدة بيانات مفتوح المصدر أو مجرد برنامج قاعدة بيانات. MySQL سيقوم بتنظيم البيانات ثم تخزينها في قاعدة البيانات الخاصة به.

مزايا:

  • SQL لديها واضح المعالم المعايير
  • SQL هي تفاعلي في الطبيعة
  • بمساعدة SQL ، يمكن للمرء إنشاء ملفات وجهات نظر متعددة
  • قابلية نقل الكود في SQL هي ميزة بارزة

البيانات وقاعدة البيانات

أولا وقبل كل شيء نحن بحاجة إلى فهم ما هي البيانات. البيانات عبارة عن مجموعة من الحقائق حول موضوع الاهتمام. قد تتضمن بيانات حول الطالب معلومات مثل الاسم ، فريد iد ، العمر ، العنوان ، التعليم ، إلخ. يجب أن يقوم البرنامج بتخزين البيانات كما هو مطلوب للإجابة على سؤال مثل ، كم عدد الطلاب الذين تبلغ أعمارهم 15 عامًا؟

قاعدة البيانات:

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

يمكن تصنيف قاعدة البيانات على نطاق واسع إلى المجموعات التالية:

  • قاعدة بيانات مركزية
  • قاعدة البيانات الموزعة
  • قاعدة البيانات التشغيلية
  • قاعدة بيانات علائقية
  • قاعدة البيانات السحابية
  • قاعدة بيانات كائنية المنحى
  • قاعدة بيانات الرسم البياني

الآن سنركز أكثر على قاعدة البيانات العلائقية التي تستخدم SQL لعملياتها. دعونا نستخدم بعض من

كيف تنشئ قاعدة بيانات؟

مزايا طريقة التحميل الزائد في جافا

نستخدم عبارة CREATE DATABASE لإنشاء قاعدة بيانات جديدة.

بناء الجملة:

إنشاء اسم قاعدة بيانات

مثال :

إنشاء مدرسة قاعدة بيانات

لذلك سيتم إنشاء قاعدة بيانات اسم المدرسة. إذا كنت تريد حذف قاعدة البيانات هذه ، فعليك استخدام الصيغة التالية.

كيف تسقط قاعدة بيانات؟

بناء الجملة:

اسم قاعدة بيانات DROP

مثال:

مدرسة DROP DATABASE

سيتم حذف قاعدة البيانات التي تحمل اسم المدرسة.

الطاولة

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

أنشئ جدولاً

لذلك لإنشاء جدول في قاعدة البيانات ، نستخدم استعلام SQL التالي.

بناء الجملة

إنشاء اسم جدول الجدول (نوع بيانات العمود 1 ، نوع بيانات العمود 2 ، نوع بيانات العمود 3 ، ....)

هنا الكلمة اصنع جدول يستخدم للقول لقاعدة بيانات أننا سنقوم بإنشاء جدول جديد. ثم نحتاج إلى ذكر اسم الجدول. يجب أن يكون هذا الاسم فريدًا. SQL غير حساس لحالة الأحرف ، لكن البيانات المخزنة داخل الجدول ستكون حساسة لحالة الأحرف. نضيف الأعمدة داخل أقواس الفتح والغلق. نحدد كل عمود بنوع بيانات معين. تعلم المزيد عن أنواع البيانات في SQL تحقق من .

مثال:

CREATE TABLE Student (studentID int، FName varchar (25)، LName varchar (25)، Address varchar (50)، City varchar (15)، Marks int))

لقد أنشأنا جدولًا باسم Student وأضفنا بعض المعلمات إلى الجدول. هذه هي الطريقة التي يمكننا بها إنشاء جدول باستخدام SQL.

أسقط طاولة

إذا أردنا حذف الجدول بأكمله بجميع بياناته ، فعلينا استخدام أمر DROP.

بناء الجملة:

DROP TABLE table_name

مثال:

إسقاط طالب الجدول

لذلك سيتم حذف جدول الطالب.

اقتطاع الجدول

ماذا لو أردنا حذف البيانات الموجودة داخل الجدول فقط وليس الجدول نفسه؟ ثم يتعين علينا استخدام الاستعلام المقتطع.

بناء الجملة:

اقتطاع الجدول اسم_الجدول

مثال:

اقتطاع طالب الجدول

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

يمكننا زيادة دقة وموثوقية البيانات التي تدخل إلى قاعدة البيانات من خلال جدول بمساعدة المفهوم المسمى قيود SQL . تتأكد هذه القيود من عدم وجود انتهاك من حيث معاملة البيانات إذا تم العثور عليها ، فسيتم إنهاء الإجراء. الاستخدام الرئيسي للقيود هو الحدنوع البيانات التي يمكن إدخالها في الجدول. منذ هذا arيرتبط ticle بأساسيات SQL ، وسأناقش القيود الأكثر استخدامًا فقط. لمعرفة المزيد حول هذا الموضوع بشكل متعمق ، تحقق من مدونات SQL الأخرى.

  • إفتراضي - و.عند عدم تحديد قيمة ، يتم إضافة مجموعة من القيم الافتراضية للعمود
  • غير فارغة - هذا يتأكدأن قيمة NULL لن يتم تخزينها في عمود
  • فريد -ستكون القيم المدخلة في الجدول فريدة إذا تم تطبيق هذا القيد
  • فهرس - يستخدم هذا لإنشاء واسترداد البيانات أيضًا من قاعدة البيانات
  • المفتاح الأساسي - هو المفتاح المرشح الذي يتم تحديده لتعريف مجموعة tuple في العلاقة بشكل فريد.
  • مفتاح غريب - المفتاح الخارجي هو مجموعة من عمود واحد أو أكثر في الجدول الفرعي الذي تكون قيمه مطلوبة لتتطابق مع الأعمدة المقابلة في الجدول الأصلي
  • التحقق من -إذا أردنا تلبية شرط معين في عمود ، فإننا نستخدم قيد التحقق

استعلامات SQL الأساسية

الآن ، دعونا نركز على البعض يجب أن يعرفه المرء عندما يبدأ في التعرف على SQL. هناك العديد من الاستعلامات التي تبدو أساسية ،لكني غطيت القليل من الأشياء الضرورية حقًا للمبتدئين. لشرح كل الاستعلام الذي قمت بدراسته في جدول الطالب ، والذي سأستخدمه.

تحديد

إنه استعلام SQL الأساسي الذي يمكن للمرء استخدامه لمعالجة قاعدة البيانات. يتم استخدام الأمر select لتحديد البيانات من قاعدة البيانات وعرضها على المستخدم.

بناء الجملة :

حدد العمود 1 والعمود 2 & hellip .. العمود N من الجدول

مثال :

حدد اسمًا من الطالب

سيعرض المثال أعلاه جميع الأسماء من جدول الطالب. إذا أردنا عرض جميع الحقول في الجدول ، فعلينا استخدام عامل التشغيل * (Star). سيعرض هذا الجدول بأكمله.

مثال :

حدد * من الطالب

إذا أردنا عرض حقل معين دون أي تكرارات ، فإننا نستخدم الكلمة الأساسية DISTINCT جنبًا إلى جنب مع الأمر select.

مثال :

حدد DISTINCT FName من الطالب

أين

إذا احتجنا فقط إلى سجلات معينة من الجدول ، فإننا نستخدم جملة where. حيث يعمل الشرط كآلية تصفية. ضمن قسم 'أين' نحتاج إلى تحديد شروط معينة ، فقط إذا تم استيفاء هذه الشروط ، سيتم استخراج السجلات.

بناء الجملة :

حدد العمود 1 ، العمود 2 ، ... العمود N من الجدول اسم_الشرط WHERE

مثال :

حدد الاسم من الطلاب حيث المدينة = 'دلهي'

و ، أو ، لا

إذا احتجنا إلى إضافة شرطين أو أكثر في جملة where ، فيمكننا استخدام عوامل التشغيل المذكورة أعلاه. ستضيف هذه الكلمات الأساسية مزيدًا من التعقيد إلى الاستعلام.

  • المشغل AND:يعرض عامل التشغيل هذا سجلاً إذا كانت جميع الشروط مفصولة بـ AND هي TRUE.

بناء الجملة :

هي مصفوفة كائن في جافا
حدد العمود 1 ، العمود 2 ، ... من اسم_الجدول WHERE الشرط 1 والشرط 2 والشرط 3 ...

مثال :

حدد * من الطالب حيث FName = 'John' AND Lname = 'Doe'
  • عامل التشغيل OR: يعرض عامل التشغيل هذا سجلاً إذا كان أي من الشروط المفصولة بـ OR هو TRUE.

بناء الجملة :

حدد العمود 1 ، العمود 2 ، ... من اسم_الجدول أين الشرط 1 أو الشرط 2 أو الحالة 3 ...

مثال :

حدد * من الطالب حيث FName = 'John' أو Lname = 'Doe'
  • عامل التشغيل NOT: يعرض عامل التشغيل هذا سجلاً إذا كانت الحالة / الشروط غير صحيحة.

بناء الجملة :

حدد العمود 1 ، العمود 2 ، ... من اسم الجدول حيث لا يوجد شرط

مثال :

حدد * من الطالب حيث ليس Lname = 'Doe'

ادخل في

إذا أردنا إدراج أي سجل أو بيانات جديدة في جدول ، فيمكننا استخدام استعلام INSERT. يمكننا استخدام الإدخال بطريقتين:

  • نحدد هنا أسماء الأعمدة التي نحتاج إلى إدراج السجل لها.

بناء الجملة :

أدخل اسم_الجدول (العمود 1 ، العمود 2 ، ...) القيم (القيمة 1 ، القيمة 2 ، القيمة 3 ، ...)

مثال :

أدخل في قيم الطالب (معرف الطالب ، FName ، LName ، العنوان ، المدينة ، العلامات) (101 ، 'JHON' ، 'DOE' ، '# 21 ، MG ROAD' ، 'Bengaluru' ، 550)
  • في هذا ، لا يتعين علينا تحديد أعمدة الجدول. ولكن تأكد من أن ترتيب القيم بنفس ترتيب الأعمدة في الجدول.

بناء الجملة :

INSERT INTO table_name VALUES (value1، value2، value3، ...)

مثال :

INSERT INTO Student VALUES (102، 'Alex'، 'Cook'، '# 63، Brigade ROAD، NEAR HAL'، 'Bengaluru'، 490)


إذا أردنا الإدراج في أعمدة محددة ، فنحن بحاجة إلى اتباع الطريقة أدناه.

مثال :

INSERT INTO Student (معرف الطالب ، FName) القيم (103 ، 'مايك')

وظائف مجمعة

الدالة التجميعية هي دالة يتم فيها تجميع قيم الصفوف المتعددة معًا كمدخلات في معايير معينة ويتم إرجاع قيمة واحدة. غالبًا ما نستخدم الدالات التجميعية مع جمل GROUP BY و HAVING في عبارة SELECT. سنناقش GROUP BY و ORDER BY و HAVING لاحقًا في هذا القسم. بعض الدالات التجميعية هي COUNT و SUM و AVG و MIN و MAX.

دعونا نناقش كل واحد على حدة.

  • COUNT (): ترجع هذه الدالة عدد الصفوف التي تطابق المعايير المحددة.

بناء الجملة :

حدد عددًا (COUNT) (اسم_عمود) من table_name WHERE

مثال :

حدد العدد (معرف الطالب) من الطالب
  • AVG (): ترجع هذه الدالة القيمة المتوسطة لعمود رقمي.

بناء الجملة :

حدد AVG (اسم_عمود) من table_name WHERE

مثال :

حدد AVG (علامات) من الطالب
  • SUM (): تعرض هذه الدالة المجموع الإجمالي لعمود رقمي.

بناء الجملة :

حدد المجموع (اسم_العمود) من شرط اسم_الجدول WHERE

مثال :

حدد مجموع (علامات) من الطالب
  • MIN (): ترجع هذه الدالة أصغر قيمة للعمود المحدد.

بناء الجملة :

حدد MIN (اسم_عمود) من table_name WHERE

مثال :

حدد MIN (علامات) على أنها أقل علامات من الطالب
  • MAX (): ترجع هذه الدالة أكبر قيمة للعمود المحدد.

بناء الجملة :

حدد MAX (اسم_العمود) من table_name WHERE

مثال :

حدد ماكس (علامات) كأعلى درجات من الطالب

ملاحظة: لقد استخدمنا الاسم المستعار هنا (AS new_name) ، والذي سنناقشه في وقت قصير.

تجميع حسب ، الحصول عليها ، ترتيب حسب

كيفية إنشاء مجموعة من العناصر في جافا

تُستخدم هذه الكلمات الأساسية (GROUP BY ، HAVING ، ORDER BY) في استعلام لزيادة الوظائف. كل واحد منهم لديه دور معين يلعبه.

  • GROUP BY: تُستخدم هذه الوظيفة لترتيب نوع مماثل من البيانات في مجموعة. على سبيل المثال ، إذا كان العمود في الجدول يتكون من بيانات أو قيمة متشابهة في صفوف مختلفة ، فيمكننا استخدام وظيفة GROUP BY لتجميع البيانات.

بناء الجملة :

حدد اسم (أسماء) العمود من اسم_الجدول حيث الحالة المجموعة حسب اسم العمود (الأسماء)

مثال :

حدد العدد (StudentID) ، Fname FROM Student GROUP By Fname
  • HAVING: تُستخدم هذه الفقرة لوضع الشروط التي نحتاج فيها إلى تحديد المجموعة التي ستكون جزءًا من مجموعة النتائج النهائية. أيضًا ، لا يمكننا استخدام الدوال المجمعة مثل SUM () ، COUNT () إلخ مع أين شرط. في مثل هذه الحالة ، يتعين علينا استخدام شرط HAVING.

بناء الجملة :

حدد اسم (أسماء) العمود من اسم_الجدول حيث الشرط تجميع حسب العمود (الأسماء) التي لها شرط


مثال :

حدد Fname ، SUM (العلامات) من مجموعة الطلاب حسب Fname HAVING SUM (العلامات)> 500

  • ORDER BY: تُستخدم هذه الكلمة الأساسية لفرز مجموعة النتائج بترتيب تصاعدي أو تنازلي. ال ترتيب حسب يجب على الكلمة الأساسية فرز السجلات بترتيب تصاعدي افتراضيًا. إذا أردنا فرز السجلات بترتيب تنازلي ، فاستخدم الكلمة الأساسية DESC.

بناء الجملة :

حدد العمود 1 ، العمود 2 ، ... من اسم_الجدول ترتيب حسب العمود 1 ، العمود 2 ، ... ASC | تنازلي


مثال :

حدد العدد (معرف الطالب) ، المدينة من مجموعة الطلاب حسب المدينة الترتيب حسب العدد (معرف الطالب) تنازليًا

القيم الفارغة

في SQL نستخدم المصطلح NULL لتمثيل قيمة مفقودة. يبدو أن القيمة الخالية في الجدول هي قيمة فارغة. الحقل ذو القيمة NULL هو حقل بدون قيمة في SQL. لاحظ أن القيمة NULL تختلف عن القيمة الصفرية أو الحقل الذي يحتوي على مسافات.

للتحقق من القيمة الخالية ، ليس من المفترض أن نستخدم عوامل التشغيل مثل ، = إلخ. إنها غير مدعومة في SQL. لدينا كلمات رئيسية خاصة ، أي هي NULL و IS NOT NULL.

  • باطل بناء الجملة :
حدد اسم العمود من table_name حيث يكون اسم العمود NULL

مثال :

حدد Fname ، Lname From Student حيث تكون العلامات NULL

  • هو ليس لاشيء بناء الجملة :
حدد اسم العمود من table_name حيث إن اسم العمود ليس فارغًا

مثال :

حدد Fname ، Lname From Student حيث العلامات ليست NULL

تحديث وحذف

  • UPDATE: يتم استخدام الأمر Update لتعديل الصفوف في الجدول. يمكن استخدام أمر التحديث لتحديث حقل واحد أو عدة حقول في نفس الوقت.

بناء الجملة :

UPDATE table_name تعيين العمود 1 = القيمة 1 ، العمود 2 = القيمة 2 ، ... الشرط أين

مثال :

UPDATE Student SET Fname = 'Robert'، Lname = 'Wills' WHERE StudentID = 101
  • حذف: يتم استخدام أمر SQL DELETE لحذف الصفوف التي لم تعد مطلوبة من جداول قاعدة البيانات. يقوم بحذف الصف بأكمله من الجدول .

بناء الجملة :

احذف من شرط table_name أين

مثال :

احذف من الطالب حيث FName = 'Robert'

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

مثال :

حذف من الطالب

أحد الأسئلة الرئيسية التي تطرح الآن هو: ما هو الفرق بين الأمر DELETE و TRUNCATE؟ الجواب بسيط. DELETE هو أمر DML بينما TRUNCATE هو أمر DDL ، كما يحذف DELETE السجلات واحدًا تلو الآخر ويقوم بإجراء إدخال لكل عملية حذف في سجل المعاملات ، بينما يقوم TRUNCATE بإلغاء تخصيص الصفحات وإجراء إدخال لإلغاء تخصيص الصفحات في سجل المعاملات .

IN و BETWEEN عاملين

  • يتم استخدام عامل التشغيل IN لتحديد قيم متعددة داخل جملة WHERE. إنها بمثابة اختصار لـ OR متعددة.

بناء الجملة :

حدد اسم (أسماء) العمود من اسم_الجدول حيث يوجد اسم_العمود IN (القيمة 1 ، القيمة 2 ، ...)

مثال :

حدد StudentID و Fname و Lname FROM Student Where City IN ('Delhi'، 'Goa'، 'Pune'، 'Bengaluru')
  • سيحدد عامل BETWEEN قيمة معينة ضمن النطاق المحدد. من الضروري إضافة قيمة البداية والنهاية (المدى).

بناء الجملة :

حدد اسم (أسماء) العمود من اسم_الجدول حيث يوجد اسم_العمود بين القيمة 1 والقيمة 2

مثال :

حدد StudentID و Fname و Lname من Student حيث العلامات بين 400 و 500

الأسماء المستعارة في SQL

الاسم المستعار هو عملية إعطاء اسم مؤقت لجدول أو عمود بحيث يساعد عندما يكون الاستعلام معقدًا. يزيد من سهولة قراءة الاستعلام. إعادة التسمية هذه مؤقتة ولا يتغير اسم الجدول في قاعدة البيانات الأصلية. يمكننا تسمية عمود أو جدول. لقد ذكرت أدناه كلا الصيغتين.

ال بناء الجملة لتعرج العمود :

حدد اسم_العمود كاسم_اسم مستعار من اسم_الجدول

مثال لتعرج العمود :

حدد معرف العميل كمعرف ، واسم العميل كعميل من العملاء

بناء الجملة لتعرج الجدول :

حدد اسم (أسماء) العمود من table_name AS اسم مستعار

مثال لتعرج الجدول :

حدد S.Fname، S.LName من الطالب كـ S.

هذا يقودنا إلى نهاية مقالة أساسيات SQL.أتمنى أن تكون قد فهمت مفاهيم أساسيات SQL.

إذا كنت ترغب في معرفة المزيد عن MySQL وتعرف على قاعدة البيانات الارتباطية مفتوحة المصدر هذه ، ثم تحقق من الذي يأتي مع تدريب مباشر بقيادة مدرب وخبرة مشروع واقعية. سيساعدك هذا التدريب على فهم MySQL بعمق ويساعدك على تحقيق إتقان الموضوع.

لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات في أساسيات SQL وسنقوم بالرد عليك.