برنامه نویسی

دوره SQL: روابط یک به چند و پیوستن چپ

Summarize this content to 400 words in Persian Lang
در فصل آخر با فیلدهای یک به یک و پیوندهای داخلی آشنا شدیم. در این فصل با روابط یک به چند و پیوندهای چپ آشنا می شویم. اگر فصل آخر را دنبال کرده باشید، این کار باید آسان باشد.

یک را ایجاد خواهیم کرد posts table و الف post is related to one user و الف user can have many posts. به همین دلیل است که به آن رابطه یک به چند می گویند.

پیش نیاز با لینک

جدول پست ها را ایجاد کنید

جدول پست را با کلید اصلی خودش و یک کلید خارجی برای جدول کاربر ایجاد می کنیم.

با اجازه دادن به جدول پست‌ها یک کلید اصلی مستقل، محدودیتی برای داشتن کلید خارجی یکسان چندین پست وجود ندارد.

CREATE TABLE Posts
(
ID INTEGER PRIMARY KEY AUTOINCREMENT,
UserID INTEGER NOT NULL,
Title VARCHAR(255) NOT NULL,
Content TEXT NOT NULL,
FOREIGN KEY (UserID) REFERENCES Users(ID)
);

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

داده ها را در جدول پست ها درج کنید

INSERT INTO Posts (UserID, Title, Content) VALUES
(1, ‘sql’, ‘sql content’),
(1, ‘java’, ‘java content’),
(2, ‘NLP’, ‘NLP content’),
(2, ‘rust’, ‘rust content’);

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

با عضویت چپ پرس و جو کنید.

ما یک پرس و جو ایجاد می کنیم که در آن همه کاربران را دریافت کنیم و اگر کاربر یک پست داشته باشد، آن پست را بازیابی می کنیم.

SELECT u.Username, p.Title, p.Content
FROM Users u
LEFT JOIN Posts p ON u.ID = p.UserID;

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نتیجه: بن | جاوا | محتوای جاوابن | sql | محتوای sqlجیم | NLP | محتوای NLPجیم | زنگ زدگی | محتوای زنگ زدگیلوک | |

در فصل آخر با فیلدهای یک به یک و پیوندهای داخلی آشنا شدیم. در این فصل با روابط یک به چند و پیوندهای چپ آشنا می شویم. اگر فصل آخر را دنبال کرده باشید، این کار باید آسان باشد.

یک را ایجاد خواهیم کرد posts table و الف post is related to one user و الف user can have many posts. به همین دلیل است که به آن رابطه یک به چند می گویند.

پیش نیاز با لینک

جدول پست ها را ایجاد کنید

جدول پست را با کلید اصلی خودش و یک کلید خارجی برای جدول کاربر ایجاد می کنیم.

با اجازه دادن به جدول پست‌ها یک کلید اصلی مستقل، محدودیتی برای داشتن کلید خارجی یکسان چندین پست وجود ندارد.

CREATE TABLE Posts
(
  ID INTEGER PRIMARY KEY AUTOINCREMENT,
  UserID INTEGER NOT NULL,
  Title VARCHAR(255) NOT NULL,
  Content TEXT NOT NULL,
  FOREIGN KEY (UserID) REFERENCES Users(ID)
);
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

داده ها را در جدول پست ها درج کنید

INSERT INTO Posts (UserID, Title, Content) VALUES 
   (1, 'sql', 'sql content'),
   (1, 'java', 'java content'),
   (2, 'NLP', 'NLP content'),
   (2, 'rust', 'rust content');
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

با عضویت چپ پرس و جو کنید.

ما یک پرس و جو ایجاد می کنیم که در آن همه کاربران را دریافت کنیم و اگر کاربر یک پست داشته باشد، آن پست را بازیابی می کنیم.

SELECT u.Username, p.Title, p.Content
FROM Users u
LEFT JOIN Posts p ON u.ID = p.UserID;
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نتیجه:
بن | جاوا | محتوای جاوا
بن | sql | محتوای sql
جیم | NLP | محتوای NLP
جیم | زنگ زدگی | محتوای زنگ زدگی
لوک | |

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا