ایجاد جدول و رلیشن با کد SQL روی سه جدول

ایجاد سه جدول در SQL به همراه رلیشن بین آنها

توسط admin | گروه SQL Server | 1403/07/28

نظرات 0

در پایگاه داده SQL Server سه جدول ایجاد می کنیم که با هم ارتباط داشته باشند و سپس یک کوئری JOIN برای آن‌ها می نویسیم. فرض کنید جداولی برای مدیریت اطلاعات مشتریان، سفارشات و محصولات داریم. 

1. ایجاد جداول

جدول Customers

کد sql
CREATE TABLE Customers (     CustomerID INT PRIMARY KEY,     FirstName VARCHAR(50),     LastName VARCHAR(50),     Email VARCHAR(100) ); 

جدول Products

کد sql
CREATE TABLE Products (     ProductID INT PRIMARY KEY,     ProductName VARCHAR(100),     Price DECIMAL(10, 2) ); 

جدول Orders

کد sql
CREATE TABLE Orders (     OrderID INT PRIMARY KEY,     CustomerID INT,     ProductID INT,     OrderDate DATE,     Quantity INT,     FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID),     FOREIGN KEY (ProductID) REFERENCES Products(ProductID) ); 

2. افزودن رکوردها به جداول

رکوردهای جدول Customers

کد sql
INSERT INTO Customers (CustomerID, FirstName, LastName, Email) VALUES (1, 'John', 'Doe', 'john.doe@example.com'), (2, 'Jane', 'Smith', 'jane.smith@example.com'), (3, 'Alice', 'Johnson', 'alice.johnson@example.com'); 

رکوردهای جدول Products

کد sql
INSERT INTO Products (ProductID, ProductName, Price) VALUES (1, 'Laptop', 800.00), (2, 'Smartphone', 600.00), (3, 'Tablet', 300.00); 

رکوردهای جدول Orders

کد sql
INSERT INTO Orders (OrderID, CustomerID, ProductID, OrderDate, Quantity) VALUES (1, 1, 1, '2023-10-01', 1), (2, 1, 2, '2023-10-15', 2), (3, 2, 3, '2023-10-20', 1), (4, 3, 1, '2023-10-22', 3); 

3. اجرای کوئری‌های JOIN

کوئری 1: INNER JOIN برای نمایش اطلاعات سفارشات به همراه نام مشتری و محصول

کد sql
SELECT Customers.FirstName, Customers.LastName, Products.ProductName, Orders.OrderDate, Orders.Quantity FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID INNER JOIN Products ON Orders.ProductID = Products.ProductID; 

توضیح: این کوئری اطلاعات سفارشات را به همراه نام مشتری و نام محصول نمایش می‌دهد.

کوئری 2: LEFT JOIN برای نمایش تمامی مشتریان و سفارشاتشان (حتی اگر سفارشی نداشته باشند)

کد sql
SELECT Customers.FirstName, Customers.LastName, Orders.OrderDate, Orders.Quantity, Products.ProductName FROM Customers LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID LEFT JOIN Products ON Orders.ProductID = Products.ProductID; 

توضیح: این کوئری تمامی مشتریان را نمایش می‌دهد، حتی اگر سفارشی نداشته باشند. اگر سفارشی موجود باشد، اطلاعات سفارش و محصول نیز نمایش داده می‌شود.

کوئری 3: نمایش مجموع مبلغ سفارشات هر مشتری

کد sql
SELECT Customers.FirstName, Customers.LastName, SUM(Orders.Quantity * Products.Price) AS TotalSpent FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID INNER JOIN Products ON Orders.ProductID = Products.ProductID GROUP BY Customers.FirstName, Customers.LastName; 

توضیح: این کوئری مجموع مبلغ سفارشات هر مشتری را محاسبه و نمایش می‌دهد.

این مثال‌ها نحوه ایجاد جداول، افزودن رکوردها و اجرای کوئری‌های JOIN در پایگاه داده SQL Server را نشان می‌دهند.  

 

0 نظر

نظر محترم شما در مورد مقاله های وب سایت برنامه نویسی و پایگاه داده

نظرات محترم شما در خدمات رسانی بهتر ما را یاری می نمایند. لطفا اگر مایل بودید یک نظر ما را مهمان فرمائید. آدرس ایمیل و وب سایت شما نمایش داده نخواهد شد.

حرف 500 حداکثر