SQL

پایگاه داده و SQL

از صفر تا کار با پایگاه داده — داده‌هایت را با SQL ذخیره، جست‌وجو و مدیریت کن.

۸۸درس
۶۱تمرین
۲۰ساعت
۹۴٪رضایت
مشاهده‌ی سرفصل‌ها
درباره‌ی دوره

چه چیزی یاد می‌گیری؟

پایگاه داده و SQL

تقریباً هر برنامه‌ای داده‌ها را در یک پایگاه داده نگه می‌دارد. اینجا یاد می‌گیری با SQL، زبان مشترکِ کار با داده، آن‌ها را بسازی، جست‌وجو و مدیریت کنی.

این دوره با یک پایگاه‌دادهٔ واقعیِ یک فروشگاه آنلاین کار می‌کند: مشتری‌ها، محصول‌ها، سفارش‌ها و کارمندها. هر کوئری را همان‌جا داخل مرورگر روی داده‌های واقعی اجرا می‌کنی، جدول‌ها را می‌بینی و نتیجه‌ات با پاسخ درست مقایسه می‌شود.

از مبانی مدل رابطه‌ای تا توابع پنجره‌ای، طراحی پایگاه داده و امنیت — قدم‌به‌قدم، با تمرین زنده و بازخورد دقیق.

۱۹ سرفصل ساخت‌یافته
۶۱ تمرین عملی
اجرا و بازخورد آنی در مرورگر
گواهی پایان دوره
ساخته‌ی تیم آموزشی دینا کد

این دوره را تیم آموزشی دینا کد طراحی کرده — با تمرکز بر «یادگیری با انجام‌دادن»: هر مفهوم با تمرین عملی و داوری خودکار که کدت را همان لحظه می‌سنجد، و سرفصل‌هایی که بر پایه‌ی مسیر واقعی یک برنامه‌نویس چیده شده‌اند.

سرفصل‌ها

سرفصل‌های دوره

۱۹ سرفصل · ۸۸ درس · ۶۱ تمرین

۱

مبانی پایگاه داده و مدل رابطه‌ای

۵ درس
  • داده در جدول‌ها زندگی می‌کندپیش‌نمایش رایگان
  • کلید اصلی و کلید خارجی: چسبِ بین جدول‌هاپیش‌نمایش رایگان
  • به‌جای «چطور»، بگو «چه می‌خواهی»پیش‌نمایش رایگان
  • مشتری‌های تهرانپیش‌نمایش رایگانتمرین
  • محصول‌های ارزان، از ارزان به گرانتمرین
۲

SELECT، WHERE، ORDER BY و LIMIT

۵ درس
  • خطِ لوله‌ی یک کوئری: FROM → WHERE → ORDER BY → LIMITتمرین
  • انتخاب ستون‌ها و نام مستعار با ASتمرین
  • فیلتر کردن ردیف‌ها با WHEREتمرین
  • تله‌ی AND/OR و قدرتِ پرانتزتمرین
  • LIKE، IN، BETWEEN و گرفتنِ Top-Nتمرین
۳

DISTINCT، توابع و CASE

۴ درس
  • شهرهای یکتا با DISTINCTتمرین
  • ساختن برچسب با توابع متنی و ||تمرین
  • استخراج سال با EXTRACT و گروه‌بندیتمرین
  • برچسب‌گذاری قیمت با CASEتمرین
۴

تجمیع: GROUP BY و HAVING

۶ درس
  • از «سطرها» به «خلاصه»: ذهنیت تجمیع
  • اولین خلاصه‌ها: COUNT، MIN، MAX، AVGتمرین
  • سه چهرهٔ COUNT و رازِ NULLتمرین
  • یک خلاصه برای هر گروه: GROUP BYتمرین
  • GROUP BY سخت‌گیر: خطایی که همه می‌گیرندتمرین
  • فیلترِ گروه‌ها با HAVING (و فرقش با WHERE)تمرین
۵

اتصال جدول‌ها (JOIN)

۵ درس
  • اولین JOIN: حاصل‌ضرب دکارتی و فیلترِ ONتمرین
  • پیش‌بینیِ تعدادِ ردیفِ خروجیِ JOINتمرین
  • LEFT JOIN و دامِ شرطِ WHERE روی جدولِ راستتمرین
  • دامِ تکثیرِ ردیف (fan-out) و دوبار-شماریتمرین
  • اتصالِ یک جدول به خودش (self-join): کارمند و مدیرشتمرین
۶

عملگرهای مجموعه‌ای

۴ درس
  • روی‌هم چیدن نتیجه‌ها: عملگرهای مجموعه‌ای
  • یکی‌کردن دو فهرست: UNION در برابر UNION ALLتمرین
  • اشتراک دو فهرست با INTERSECTتمرین
  • تفاضل دو فهرست با EXCEPTتمرین
۷

زیرکوئری‌ها

۶ درس
  • زیرکوئری چیست؟ کوئری درون کوئری
  • زیرکوئری اسکالر: گران‌تر از میانگینتمرین
  • زیرکوئری با IN: مشتری‌های دارای سفارش پرداخت‌شدهتمرین
  • زیرکوئری همبسته: گران‌تر از میانگینِ دسته‌ی خودشتمرین
  • تله‌ی NOT IN با NULL، و راه‌حل درست با NOT EXISTSتمرین
  • جدولِ مشتق: میانگین ارزشِ هر سفارشتمرین
۸

CTEها و بازگشتی

۴ درس
  • نام‌گذاری زیرکوئری با WITHتمرین
  • زنجیره‌ی چند CTEتمرین
  • ذهنیت بازگشت: راه‌رفتن روی سلسله‌مراتب
  • چارت سازمانی با CTE بازگشتیتمرین
۹

توابع پنجره‌ای (Window Functions)

۵ درس
  • GROUP BY در برابر OVER: قلب توابع پنجره‌ایتمرین
  • رتبه‌بندی محصولات داخل هر دسته با RANKتمرین
  • دو محصول گران هر دسته (Top-N در هر گروه)تمرین
  • جمع تجمعی درآمد (Running Total) با SUM() OVERتمرین
  • تغییر ماه‌به‌ماه فروش با LAGتمرین
۱۰

انواع داده و NULL

۵ درس
  • انواع داده و راز NULL: منطقِ سه‌ارزشی
  • چرا «= NULL» هیچ‌وقت کار نمی‌کندتمرین
  • دامِ مرگبارِ NOT IN با NULLتمرین
  • COALESCE و NULLIF: رام‌کردنِ NULLتمرین
  • NULL در گروه‌بندی، تجمیع و مرتب‌سازیتمرین
۱۱

تعریف داده (DDL): جدول‌ها و قیدها

۵ درس
  • از پرسیدن تا ساختن: دنیای DDL
  • جدول نظرات را بسازتمرین
  • یک ستون به مشتری‌ها اضافه کنتمرین
  • جدول کدهای تخفیفتمرین
  • DELETE، TRUNCATE و DROP: سه راهِ متفاوتِ پاک کردن
۱۲

دستکاری داده (DML) و UPSERT

۵ درس
  • INSERT: یک ردیف تازه به جدول اضافه کنتمرین
  • INSERT … SELECT: درج گروهی از روی یک کوئریتمرین
  • UPDATE با WHERE: تغییرِ هدفمندِ ردیف‌هاتمرین
  • DELETE با WHERE و دیوارِ کلیدِ خارجیتمرین
  • UPSERT: درج کن، اگر بود به‌روز کن (ON CONFLICT)تمرین
۱۳

ویوها (Views)

۴ درس
  • ویو چیست؟ یک کوئری که اسم می‌گیرد
  • ساختن ویوی paid_revenueتمرین
  • ویوی order_totals: مبلغ هر سفارشتمرین
  • ویوی معمولی در برابر مادی‌شده (Materialized)
۱۴

ایندکس‌ها

۴ درس
  • ایندکس چیست و چرا جست‌وجو را تند می‌کند؟
  • کِی ایندکس استفاده می‌شود و کِی نه (Sargability)
  • ایندکس‌های موجود را با pg_indexes فهرست کنتمرین
  • ایندکس‌های پوششی و جزئی — و این‌که چه ایندکسی بسازیم
۱۵

پلن اجرا و بهینه‌سازی

۴ درس
  • نقشه‌ی راهِ کوئری: EXPLAIN را بخوان
  • سه راهِ JOIN: حلقه، هَش، ادغام
  • آنتی‌پترن‌ها: چطور ناخواسته اندیس را می‌کُشی
  • بازنویسیِ آنتی‌پترن به شرطِ اندیس‌پذیرتمرین
۱۶

تراکنش‌ها و ACID

۴ درس
  • تراکنش: همه‌چیز یا هیچ‌چیز (BEGIN / COMMIT / ROLLBACK)
  • ثبت اتمیِ یک سفارش کامل در یک تراکنشتمرین
  • SAVEPOINT: عقب‌زدن بخشی از یک تراکنشتمرین
  • چهار ناهنجاری و چهار سطح ایزولاسیون
۱۷

نرمال‌سازی و طراحی شِما

۴ درس
  • وقتی جدول «چاق» می‌شود: وابستگی تابعی و سه فاجعه
  • نردبانِ نرمال‌سازی: از 1NF تا BCNF (شهودی)
  • تمرین: شکستنِ جدولِ تخت به جدول‌های نرمال + واسطتمرین
  • وقتی *عمداً* نرمال نمی‌کنیم: غیرنرمال‌سازی و مدلِ ستاره
۱۸

پیشرفته: Pivot و JSON

۶ درس
  • از ردیف به ستون: ایده‌ی Pivot
  • Pivot درآمد: هر دسته یک ستونتمرین
  • ماتریس Pivot: ماه × وضعیت سفارشتمرین
  • JSON در PostgreSQL: ساختن و خواندن
  • ساختن JSON: محصولات هر دسته به‌صورت آرایهتمرین
  • خواندن JSON: استخراج فیلد با ‎->‎ و ‎->>‎تمرین
۱۹

امنیت: تزریق SQL و حداقل دسترسی

۳ درس
  • تزریق SQL: وقتی ورودیِ کاربر تبدیل به دستور می‌شود
  • ببین تزریق دقیقاً چه چیزی را لو می‌دهدتمرین
  • درمان: پرس‌وجوی پارامتری‌شده و اصلِ حداقل دسترسی

همین حالا شروع کن

اولین خط کدت را همین امروز در «پایگاه داده و SQL» بنویس. شروع رایگان است و در کمتر از دو دقیقه وارد محیط یادگیری می‌شوی.

پایگاه داده و SQL — دینا کد