SQL Tutorial
```wiki
درس في لغة SQL للمبتدئين
هذا الدرس يهدف إلى تقديم مقدمة شاملة للغة SQL (Structured Query Language) للمبتدئين. SQL هي لغة قياسية تستخدم لإدارة البيانات في قواعد البيانات العلائقية. سنغطي المفاهيم الأساسية، الأوامر الشائعة، وكيفية استخدامها لاسترجاع، تعديل، وحذف البيانات.
ما هي قاعدة البيانات العلائقية؟
قبل الغوص في SQL، من المهم فهم ما هي قاعدة البيانات العلائقية. تخيل جدولاً يتكون من صفوف وأعمدة. قاعدة البيانات العلائقية تتكون من مجموعة من هذه الجداول المرتبطة ببعضها البعض. هذه العلاقات تسمح لنا بتخزين البيانات بطريقة منظمة وفعالة، وتسهل استرجاعها وتحليلها. مثال على أنظمة إدارة قواعد البيانات العلائقية (RDBMS) تشمل MySQL, PostgreSQL, Oracle, و Microsoft SQL Server.
أساسيات لغة SQL
SQL ليست لغة برمجة بالمعنى التقليدي. إنها لغة استعلام، أي أنها تستخدم للتفاعل مع البيانات الموجودة في قاعدة البيانات. معظم أوامر SQL تتبع بناءً جمليًا مشابهًا:
- `SELECT`: لاسترجاع البيانات.
- `FROM`: لتحديد الجدول الذي يتم الاستعلام منه.
- `WHERE`: لتحديد شروط الاستعلام.
- `INSERT`: لإضافة بيانات جديدة إلى الجدول.
- `UPDATE`: لتعديل البيانات الموجودة في الجدول.
- `DELETE`: لحذف البيانات من الجدول.
استرجاع البيانات (SELECT)
أمر `SELECT` هو أهم أمر في SQL. يستخدم لاسترجاع البيانات من جدول واحد أو أكثر.
مثال:
```sql SELECT * FROM Customers; ```
هذا الأمر سيسترجع جميع الأعمدة (`*`) من الجدول المسمى `Customers`.
يمكنك أيضًا تحديد أعمدة معينة:
```sql SELECT CustomerName, City FROM Customers; ```
هذا الأمر سيسترجع فقط عمودي `CustomerName` و `City` من الجدول `Customers`.
استخدام الشرط WHERE
يستخدم الشرط `WHERE` لتحديد الصفوف التي سيتم استرجاعها بناءً على شروط معينة.
مثال:
```sql SELECT * FROM Customers WHERE City = 'London'; ```
هذا الأمر سيسترجع جميع الصفوف من الجدول `Customers` حيث قيمة العمود `City` تساوي 'London'.
يمكن استخدام عوامل المقارنة المختلفة في الشرط `WHERE`:
- `=`: يساوي
- `!=` أو `<>`: لا يساوي
- `>`: أكبر من
- `<`: أصغر من
- `>=`: أكبر من أو يساوي
- `<=`: أصغر من أو يساوي
- `LIKE`: يستخدم للبحث عن أنماط (Wildcards)
- `IN`: يستخدم للتحقق من وجود قيمة في قائمة
- `BETWEEN`: يستخدم للتحقق من وجود قيمة بين نطاق معين
مثال على استخدام `LIKE`:
```sql SELECT * FROM Customers WHERE CustomerName LIKE 'A%'; ```
هذا الأمر سيسترجع جميع الصفوف من الجدول `Customers` حيث يبدأ اسم العميل بالحرف 'A'.
ترتيب النتائج (ORDER BY)
يستخدم الأمر `ORDER BY` لترتيب النتائج بناءً على عمود معين.
مثال:
```sql SELECT * FROM Customers ORDER BY CustomerName; ```
هذا الأمر سيسترجع جميع الصفوف من الجدول `Customers` مرتبة أبجديًا حسب اسم العميل.
يمكن تحديد ترتيب تصاعدي (`ASC`) أو تنازلي (`DESC`):
```sql SELECT * FROM Customers ORDER BY CustomerName DESC; ```
هذا الأمر سيسترجع جميع الصفوف من الجدول `Customers` مرتبة عكسيًا أبجديًا حسب اسم العميل.
تحديد عدد الصفوف (LIMIT)
يستخدم الأمر `LIMIT` لتحديد عدد الصفوف التي سيتم استرجاعها.
مثال:
```sql SELECT * FROM Customers LIMIT 5; ```
هذا الأمر سيسترجع أول 5 صفوف من الجدول `Customers`.
إدراج البيانات (INSERT)
يستخدم الأمر `INSERT` لإضافة بيانات جديدة إلى الجدول.
مثال:
```sql INSERT INTO Customers (CustomerName, City, Country) VALUES ('John Doe', 'New York', 'USA'); ```
هذا الأمر سيضيف صفًا جديدًا إلى الجدول `Customers` بقيم `CustomerName` تساوي 'John Doe'، `City` تساوي 'New York'، و `Country` تساوي 'USA'.
تحديث البيانات (UPDATE)
يستخدم الأمر `UPDATE` لتعديل البيانات الموجودة في الجدول.
مثال:
```sql UPDATE Customers SET City = 'Los Angeles' WHERE CustomerID = 1; ```
هذا الأمر سيقوم بتحديث قيمة العمود `City` إلى 'Los Angeles' للصف الذي يكون فيه `CustomerID` يساوي 1.
حذف البيانات (DELETE)
يستخدم الأمر `DELETE` لحذف البيانات من الجدول.
مثال:
```sql DELETE FROM Customers WHERE CustomerID = 1; ```
هذا الأمر سيقوم بحذف الصف الذي يكون فيه `CustomerID` يساوي 1 من الجدول `Customers`.
الدوال المدمجة (Built-in Functions)
SQL يوفر العديد من الدوال المدمجة التي يمكن استخدامها لمعالجة البيانات. بعض الأمثلة:
- `COUNT()`: لحساب عدد الصفوف.
- `SUM()`: لحساب مجموع القيم في عمود.
- `AVG()`: لحساب متوسط القيم في عمود.
- `MIN()`: لإيجاد أصغر قيمة في عمود.
- `MAX()`: لإيجاد أكبر قيمة في عمود.
مثال:
```sql SELECT COUNT(*) FROM Customers; ```
هذا الأمر سيقوم بحساب عدد الصفوف في الجدول `Customers`.
عمليات الربط (JOIN)
عمليات الربط تستخدم لدمج البيانات من جدولين أو أكثر بناءً على علاقة بينهما. هناك أنواع مختلفة من عمليات الربط:
- `INNER JOIN`: يسترجع الصفوف التي تتطابق في كلا الجدولين.
- `LEFT JOIN`: يسترجع جميع الصفوف من الجدول الأيسر والصفوف المتطابقة من الجدول الأيمن.
- `RIGHT JOIN`: يسترجع جميع الصفوف من الجدول الأيمن والصفوف المتطابقة من الجدول الأيسر.
- `FULL JOIN`: يسترجع جميع الصفوف من كلا الجدولين.
مثال:
```sql SELECT Orders.OrderID, Customers.CustomerName FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID; ```
هذا الأمر سيقوم بدمج البيانات من الجدولين `Orders` و `Customers` بناءً على تطابق قيمتي `CustomerID` في كلا الجدولين.
التجميع (GROUP BY)
يستخدم الأمر `GROUP BY` لتجميع الصفوف التي لها نفس القيمة في عمود معين. غالبًا ما يستخدم مع الدوال المجمعة مثل `COUNT()`, `SUM()`, `AVG()`, `MIN()`, و `MAX()`.
مثال:
```sql SELECT City, COUNT(*) FROM Customers GROUP BY City; ```
هذا الأمر سيقوم بتجميع الصفوف في الجدول `Customers` حسب قيمة العمود `City` ويقوم بحساب عدد الصفوف في كل مدينة.
الاستعلامات الفرعية (Subqueries)
الاستعلامات الفرعية هي استعلامات SQL مضمنة داخل استعلام آخر. يمكن استخدامها لتصفية البيانات أو حساب القيم أو أداء عمليات أخرى.
مثال:
```sql SELECT * FROM Customers WHERE City IN (SELECT City FROM Suppliers); ```
هذا الأمر سيسترجع جميع العملاء الذين يعيشون في مدينة موجودة في جدول `Suppliers`.
المفاهيم المتقدمة
- **الـ Views (المشاهد)**: جداول افتراضية تعتمد على استعلامات.
- **الـ Indexes (الفهارس)**: هياكل بيانات تساعد في تسريع عمليات الاستعلام.
- **الـ Stored Procedures (الإجراءات المخزنة)**: مجموعات من أوامر SQL التي يمكن تنفيذها كوحدة واحدة.
- **الـ Triggers (المشغلات)**: أوامر SQL يتم تنفيذها تلقائيًا استجابة لأحداث معينة في قاعدة البيانات.
SQL والخيارات الثنائية
على الرغم من أن SQL لا يستخدم بشكل مباشر في تداول الخيارات الثنائية, إلا أنه يمكن استخدامه لتحليل البيانات المتعلقة بالأسواق المالية وتحديد الاتجاهات. على سبيل المثال، يمكن استخدام SQL لتحليل بيانات أسعار الأسهم، وحجم التداول، والمؤشرات الفنية. هذه التحليلات يمكن أن تساعد المتداولين في اتخاذ قرارات مستنيرة.
- **تحليل حجم التداول**: يمكن استخدام SQL لتحديد الأيام التي يكون فيها حجم التداول مرتفعًا بشكل غير عادي، مما قد يشير إلى تغيير في الاتجاه.
- **تحديد الاتجاهات**: يمكن استخدام SQL لتحديد الاتجاهات الصاعدة أو الهابطة في أسعار الأسهم.
- **المؤشرات الفنية**: يمكن استخدام SQL لحساب المؤشرات الفنية مثل المتوسطات المتحركة و RSI.
استراتيجيات الخيارات الثنائية والتحليل
- **استراتيجية 60 ثانية**: تتطلب تحليل سريع للبيانات.
- **استراتيجية مارتينجال**: تتطلب تتبع دقيق لرأس المال.
- **استراتيجية الاختراق**: تعتمد على تحديد نقاط الدعم والمقاومة.
- **تحليل الشموع اليابانية**: فهم أنماط الشموع يساعد في اتخاذ القرارات.
- **تحليل فجوة السعر**: تحديد الفجوات يساعد في توقع الاتجاهات.
- **مؤشر ستوكاستيك**: يستخدم لتحديد مناطق ذروة الشراء والبيع.
- **مؤشر MACD**: يستخدم لتحديد الاتجاهات وقوة الزخم.
- **خطوط بولينجر**: تستخدم لتحديد التقلبات.
- **مؤشر RSI**: يستخدم لتحديد مناطق ذروة الشراء والبيع.
- **تحليل الحجم**: فهم العلاقة بين السعر والحجم يساعد في تأكيد الاتجاهات.
- **استراتيجية تداول الأخبار**: تعتمد على تداول الأخبار الاقتصادية.
- **تداول الاتجاه**: تحديد الاتجاه العام للسوق.
- **تداول التصحيح**: الاستفادة من التصحيحات المؤقتة في الاتجاه.
- **تداول الاختراق**: الدخول في الصفقات عند اختراق مستويات الدعم والمقاومة.
- **استراتيجية بينالي**: تعتمد على تحديد نقاط التحول المحتملة.
- **استراتيجية المضاربة**: تهدف إلى تحقيق أرباح سريعة من تقلبات الأسعار.
- **استراتيجية التداول اليومي**: تتطلب مراقبة مستمرة للسوق.
- **استراتيجية التداول المتأرجح**: تستهدف تحقيق أرباح من تقلبات الأسعار على المدى القصير.
- **استراتيجية المتوسط المتحرك**: تعتمد على استخدام المتوسطات المتحركة لتحديد الاتجاهات.
- **استراتيجية فيبوناتشي**: تستخدم مستويات فيبوناتشي لتحديد نقاط الدعم والمقاومة.
- **استراتيجية الدعم والمقاومة**: تعتمد على تحديد مستويات الدعم والمقاومة.
- **استراتيجية العودة إلى المتوسط**: تعتمد على توقع عودة السعر إلى متوسطه.
- **استراتيجية التداول على أساس الأنماط**: تعتمد على تحديد الأنماط المتكررة في الأسعار.
- **استراتيجية التداول على أساس الأخبار**: تعتمد على تداول الأخبار الاقتصادية والسياسية.
- **استراتيجية التداول على أساس الموسمية**: تعتمد على تحديد الأنماط الموسمية في الأسعار.
خاتمة
SQL هي لغة قوية ومرنة تستخدم على نطاق واسع في إدارة البيانات. هذا الدرس قدم لك الأساسيات اللازمة للبدء في استخدام SQL. من خلال الممارسة والتجربة، يمكنك تطوير مهاراتك وتصبح خبيرًا في SQL.
قاعدة بيانات لغات البرمجة MySQL PostgreSQL Oracle Microsoft SQL Server استعلام جدول (قاعدة بيانات) علاقة (قاعدة بيانات) تصميم قاعدة البيانات تحليل البيانات البيانات الضخمة الذكاء الاصطناعي التعلم الآلي تداول الخيارات الثنائية تحليل فني تحليل أساسي إدارة المخاطر استراتيجيات التداول التحليل الكمي ```
ابدأ التداول الآن
سجّل في IQ Option (الحد الأدنى للإيداع 10 دولار) افتح حساباً في Pocket Option (الحد الأدنى للإيداع 5 دولار)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin لتصلك: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات اتجاهات السوق ✓ مواد تعليمية للمبتدئين