تمارين بكالوريا في قواعد البيانات SQL
SQL (Structured Query Language) هي لغة الاستعلام المهيكلة المستخدمة لإدارة قواعد البيانات العلائقية. هذا الدرس يقدم تمارين شاملة حول أوامر SQL الأساسية والمتوسطة.
أولا: إنشاء الجداول (CREATE TABLE)
CREATE TABLE etudiants (
id INT PRIMARY KEY AUTO_INCREMENT,
nom VARCHAR(50) NOT NULL,
prenom VARCHAR(50) NOT NULL,
date_naiss DATE,
moyenne DECIMAL(4,2)
);
ثانيا: إدراج البيانات (INSERT INTO)
INSERT INTO etudiants (nom, prenom, date_naiss, moyenne)
VALUES ('Benali', 'Ahmed', '2005-03-15', 15.5),
('Said', 'Fatima', '2006-07-22', 17.2),
('Kadi', 'Mohamed', '2005-11-08', 12.8);
ثالثا: استعلامات SELECT
استعلام أساسي لاختيار البيانات:
-- جميع الطلاب SELECT * FROM etudiants; -- الطلاب الذين معدلهم > 10 SELECT nom, prenom, moyenne FROM etudiants WHERE moyenne > 10 ORDER BY moyenne DESC; -- عدد الطلاب SELECT COUNT(*) FROM etudiants;
رابعا: ربط الجداول (JOIN)
CREATE TABLE matieres (
id INT PRIMARY KEY,
nom_matiere VARCHAR(100)
);
CREATE TABLE notes (
etudiant_id INT,
matiere_id INT,
note DECIMAL(4,2),
FOREIGN KEY (etudiant_id) REFERENCES etudiants(id),
FOREIGN KEY (matiere_id) REFERENCES matieres(id)
);
-- استعلام باستخدام JOIN
SELECT e.nom, e.prenom, m.nom_matiere, n.note
FROM etudiants e
JOIN notes n ON e.id = n.etudiant_id
JOIN matieres m ON n.matiere_id = m.id
WHERE n.note >= 10;
خامسا: دوال التجميع (GROUP BY)
-- متوسط النقاط لكل مادة
SELECT m.nom_matiere, AVG(n.note) as moyenne,
MAX(n.note) as max_note, MIN(n.note) as min_note
FROM notes n
JOIN matieres m ON n.matiere_id = m.id
GROUP BY m.nom_matiere
HAVING AVG(n.note) > 10;
تمارين بكالوريا
- أنشئ جدول “produits” يحتوي على: id، nom، prix، quantite.
- أضف 5 منتجات على الأقل إلى الجدول.
- اكتب استعلاما لاستخراج المنتجات التي سعرها > 1000 د.ج.
- اكتب استعلاما يحسب مجموع (SUM) قيمة المخزون.
- أنشئ جدول “commandes” يربط العملاء بالمنتجات باستخدام JOIN.
- اكتب استعلاما يعرض العملاء الذين طلبوا أكثر من 3 منتجات.
خلاصة
SQL هي لغة أساسية لإدارة قواعد البيانات العلائقية. إتقان أوامر SELECT، INSERT، UPDATE، DELETE، JOIN، GROUP BY ضروري لأي مبرمج أو محلل بيانات.
دروس مشابهة
- قواعد البيانات: MySQL (إنشاء قاعدة بيانات، جداول، إدخال بيانات)
- قواعد البيانات: SQL المتقدم (JOIN، GROUP BY، HAVING، Subqueries)
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.