يعد MySQL أحد أشهر أنظمة إدارة قواعد البيانات العلائقية (RDBMS) المستخدمة لتطبيقات الويب والتطبيقات الأخرى المعتمدة على البيانات. سواء كنت مبتدئًا أو شخصًا يتطلع إلى تحسين مهاراتك في MySQL، فإن فهم الاستعلامات الأساسية أمر ضروري. سترشدك هذه المدونة عبر بعض استعلامات MySQL الأساسية التي يمكنك استخدامها لعمليات قاعدة البيانات ومعالجة الجداول وإدارة البيانات.
للبدء، أنت بحاجة إلى قاعدة بيانات حيث سيتم تخزين الجداول والبيانات الخاصة بك. يعد إنشاء قاعدة بيانات أمرًا بسيطًا:
CREATE DATABASE my_database;
بمجرد إنشاء قاعدة البيانات، استخدم الاستعلام التالي لتحديدها:
USE my_database;
إذا كنت بحاجة إلى حذف قاعدة بيانات، استخدم الأمر التالي:
DROP DATABASE my_database;
الجداول هي المكان الذي يتم فيه تخزين بياناتك. يمكنك إنشاء جدول بأعمدة محددة كما يلي:
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100), email VARCHAR(100), age INT );
لرؤية جميع الجداول في قاعدة البيانات المحددة:
SHOW TABLES;
إذا كنت تريد معرفة بنية الجدول، يمكنك وصفه:
DESCRIBE users;
إذا كنت بحاجة إلى تعديل جدول عن طريق إضافة أعمدة أو تغييرها:
ALTER TABLE users ADD phone VARCHAR(15);
ALTER TABLE users MODIFY age TINYINT;
لحذف جدول:
DROP TABLE users;
لإضافة بيانات إلى جدول:
INSERT INTO users (name, email, age) VALUES ('John Doe', '[email protected]', 25);
استرجاع البيانات من جدول:
SELECT name, email FROM users WHERE age > 20;
لاسترداد كافة البيانات من جدول:
SELECT * FROM users;
لتحديث البيانات في جدول:
UPDATE users SET age = 26 WHERE name = 'John Doe';
لإزالة البيانات من جدول:
DELETE FROM users WHERE name = 'John Doe';
استخدم جملة WHERE لتصفية السجلات بناءً على شروط محددة:
SELECT * FROM users WHERE age > 20;
دمج شروط متعددة باستخدام AND أو OR:
SELECT * FROM users WHERE age > 20 AND name = 'John Doe';
تحديد البيانات بناءً على قائمة القيم:
SELECT * FROM users WHERE age IN (20, 25, 30);
تصفية البيانات ضمن نطاق:
SELECT * FROM users WHERE age BETWEEN 20 AND 30;
البحث عن الأنماط باستخدام عبارة LIKE:
SELECT * FROM users WHERE name LIKE 'J%';
تصفية السجلات ذات القيم NULL أو NOT NULL:
SELECT * FROM users WHERE email IS NULL;
حساب عدد الصفوف:
SELECT COUNT(*) FROM users;
حساب مجموع العمود:
SELECT SUM(age) FROM users;
ابحث عن متوسط قيمة العمود:
SELECT AVG(age) FROM users;
ابحث عن الحد الأقصى أو الأدنى لقيمة العمود:
SELECT MAX(age) FROM users;
SELECT MIN(age) FROM users;
بيانات المجموعة بناءً على عمود واحد أو أكثر:
SELECT age, COUNT(*) FROM users GROUP BY age;
تصفية البيانات المجمعة:
SELECT age, COUNT(*) FROM users GROUP BY age HAVING COUNT(*) > 1;
فرز البيانات بترتيب تصاعدي أو تنازلي:
SELECT * FROM users ORDER BY age DESC;
جلب البيانات من جداول متعددة حيث يتم استيفاء الشرط في كليهما:
SELECT users.name, orders.order_date FROM users INNER JOIN orders ON users.id = orders.user_id;
جلب البيانات من الجدول الأيسر ومطابقة الصفوف من الجدول الأيمن:
SELECT users.name, orders.order_date FROM users LEFT JOIN orders ON users.id = orders.user_id;
جلب البيانات من الجدول الأيمن ومطابقة الصفوف من الجدول الأيسر:
SELECT users.name, orders.order_date FROM users RIGHT JOIN orders ON users.id = orders.user_id;
استخدم استعلامًا فرعيًا لتصفية النتائج:
SELECT name FROM users WHERE id = (SELECT user_id FROM orders WHERE order_id = 1);
استخدم استعلامًا فرعيًا لحساب القيم:
SELECT name, (SELECT COUNT(*) FROM orders WHERE users.id = orders.user_id) AS order_count FROM users;
إنشاء جدول افتراضي بناءً على استعلام:
CREATE VIEW user_orders AS SELECT users.name, orders.order_date FROM users INNER JOIN orders ON users.id = orders.user_id;
حذف طريقة عرض:
DROP VIEW user_orders;
تحسين أداء الاستعلام عن طريق إنشاء فهرس:
CREATE INDEX idx_name ON users (name);
إزالة فهرس:
DROP INDEX idx_name ON users;
يعد فهم استعلامات MySQL الأساسية أمرًا ضروريًا لأي شخص يعمل مع قواعد البيانات العلائقية. سواء كنت تقوم بإدارة البيانات، أو تحسين الاستعلامات، أو ضمان سلامة البيانات، فإن هذه الأوامر تشكل أساس مهارات MySQL الخاصة بك. ومن خلال إتقانها، ستكون مجهزًا جيدًا للتعامل مع معظم المهام المتعلقة بقاعدة البيانات بسهولة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3