خودآموز آوند: انبوهِ سطرها زیرِ خط، یک مجرا که از آن بالا می‌آید و در ظرفِ مدرجی می‌ریزد که کفهٔ ترازو را پایین برده است

خودآموز تعاملی

آوند — داده: SQL، مدل‌سازی و تحلیل برای تصمیم

۶ ترم۵۱ فصل ۱۳ فصل رایگان

هنوز کسی امتیاز نداده

از یک فایل CSV تا پایگاه داده‌ای که سؤال‌های واقعی را جواب می‌دهد. SQL از صفر، JOIN و تجمیع و تابع‌های پنجره‌ای، مدل‌سازی اسکیمایی که با تغییر نمی‌پوسد، کارایی‌ای که با EXPLAIN QUERY PLAN اندازه می‌گیری — و ترم آخر، تبدیل یک عدد به تصمیمی که کسی رویش کار می‌کند. همه‌چیز در Google Colab با sqlite3، بدون سرور و بدون نصب.

  • کدنویسی متنی
  • آزمایشگاه زنده در مرورگر
جلسه اول را رایگان بخوان

فهرست کتاب

۶ ترم، ۵۱ فصل — به ترتیب.

۱داده را بخوانترم ۱ · ۸ فصلترم ۱ آوند — داده را بخوان: کشوی بازِ بایگانی، چند کارت روی میز و کارتی که یک خانه‌اش خالی است
  1. دو لولهٔ انتقال با قطرهای بسیار متفاوت که هر دو به یک ظرفِ کوچک یکسان می‌ریزندفصل ۰۱ — چرا `SQL`، وقتی `pandas` را بلدیرایگان
  2. یک ترازوی دو کفه‌ای که یک کفه‌اش سوراخ دارد و بخشی از وزنه‌ها از آن بیرون ریخته‌اندفصل ۰۲ — اولین `SELECT`رایگان
  3. دو مسیرِ لوله‌کشی با یک شیرِ انشعاب که در دو جای متفاوت گذاشته شده و دو حجمِ خیلی متفاوت خروجی می‌دهدفصل ۰۳ — `WHERE`: کدام سطرهارایگان
  4. دو فهرستِ کارتیِ یکسان روی یک میز که یکی از کارت‌ها در هرکدام جای متفاوتی گذاشته شدهفصل ۰۴ — مرتب‌سازی، یکتا، صفحه‌بندیرایگان
  5. یک جعبهٔ مرتب‌سازی با شکاف‌های شکل‌دار که چند قطعهٔ نامناسب از شکاف اشتباه رد شده‌اندفصل ۰۵ — نوع، عبارت، و تاریخی که متن استرایگان
  6. یک الک با چند سوراخ درشت که تعدادی دانه از آن رد شده و روی زمین ریخته‌اندفصل ۰۶ — ⚠️ `NULL`: نه صفر است، نه رشتهٔ خالیرایگان
  7. قیفی که دانه‌ها را به دو ظرف می‌ریزد و صافیِ داخلش فقط بخشی از ناخالصی‌ها را می‌گیردفصل ۰۷ — دادهٔ واقعی را وارد کنرایگان
  8. دو خط‌کشِ مدرج با فاصلهٔ درجه‌بندیِ متفاوت که روی یک قطعهٔ واحد گذاشته شده‌اندفصل ۰۸ — پروژه: سه پاسخ از یک محمولهٔ خامرایگان
۲تجمیع: از سطر به عددترم ۲ · ۹ فصلترم ۲ آوند — تجمیع: قیفی پر از مهره که از سه مجرا در سه ظرفِ مدرج با ارتفاع‌های متفاوت می‌ریزد
  1. قفسه‌ای از شیشه‌های یکسان که فقط از بعضی‌شان لوله‌ای به یک استوانهٔ مدرج می‌رود و بقیه دربسته کنار ایستاده‌اندفصل ۰۱ — شمردن، جمع زدن، کمینه و بیشینهرایگان
  2. دو خط تولید یکسان که در یکی صافی قبل از پرس گذاشته شده و در دیگری بعد از پرس، با دو سینی خروجی نابرابرفصل ۰۲ — `GROUP BY`، `HAVING`، و ترتیبی که واقعاً اجرا می‌شود
  3. دو الاکلنگ یکسان که هر دو در یک نقطه متعادل‌اند ولی وزنه‌های یکی نزدیک تکیه‌گاه و وزنه‌های دیگری در دو سرِ دور چیده شده‌اندفصل ۰۳ — میانگین چه چیزی را پنهان می‌کند
  4. یک تودهٔ یکسان از دیسک‌های کوچک که در دو استوانهٔ مدرجِ هم‌ارتفاع ولی نابرابرقطر ریخته شده و تا دو ارتفاعِ متفاوت بالا آمدهفصل ۰۴ — درصد، نرخ، و تقسیمی که صفر می‌شود
  5. دو ردیف قفسهٔ دانه‌بندی روی یک تودهٔ یکسان، یکی با چند خانهٔ پهن و دیگری با خانه‌های باریکِ زیاد، و دو پروفیل پرشدنِ کاملاً متفاوتفصل ۰۵ — توزیع را با `SQL` ببین
  6. یک ردیف کارتِ سرِ جای خودش در قفسه، با نوارِ شفافی که روی گروهی از آن‌ها خوابیده و یک نشانگرِ مشترک دارد، کنارِ همان گروه که به یک کارتِ ضخیم فشرده شدهفصل ۰۶ — تابعِ پنجره: تجمیع بدونِ از دست دادنِ سطر
  7. یک ردیف میلهٔ اندازه‌گیری که پنج‌تای اولش دقیقاً هم‌طول‌اند، کنارِ سه ریلِ شیاردار با فاصلهٔ شیارهای متفاوتفصل ۰۷ — رتبه و «`N` تای اولِ هر گروه»
  8. یک نوارِ بلند از میله‌های هم‌فاصله با ارتفاع‌های متفاوت و قابی صُلب که رویش می‌لغزد و سرِ نوار نصفه بیرون می‌زندفصل ۰۸ — قابِ پنجره: جمعِ رونده و میانگینِ متحرک
  9. یک کارتِ خلاصهٔ کوچک در یک کفهٔ ترازو و یک دستهٔ بلند از برگه‌ها در کفهٔ دیگر، با تیرک کاملاً ترازفصل ۰۹ — پروژه: یک گزارشِ گروهیِ واقعی
۳پیوند: داده در چند جدولترم ۳ · ۸ فصلترم ۳ آوند — پیوند: دو صفحهٔ سوراخ‌دار که با پین به هم وصل شده‌اند، با سوراخ‌های بی‌جفت و جایی که سه پین در یک سوراخ جمع شده‌اند
  1. چند کارتِ یک‌شکل که هرکدام یک برچسبِ تکراری دارند، در کنارِ یک لوحِ واحد که همان برچسب فقط یک بار رویش نوشته شدهفصل ۰۱ — چرا داده در یک جدول نمی‌ماند، و اولین `JOIN`رایگان
  2. دو صافیِ پشتِ سرِ هم که یکی همهٔ دانه‌ها را رد می‌کند و دیگری فقط دانه‌های جفت‌دار را نگه می‌داردفصل ۰۲ — `LEFT JOIN` و سطرهایی که جفت ندارند
  3. یک دستهٔ سه‌شاخه که یک جریانِ ورودی را به سه جریانِ خروجیِ هم‌اندازه تبدیل می‌کند و پیمانهٔ پایین را لبریز می‌کندفصل ۰۳ — ⚠️ پیوندی که بی‌صدا سطرها را تکثیر می‌کند
  4. یک شبکهٔ مستطیلی که از تقاطعِ یک ردیف مهره با یک ستون مهره ساخته شده و بعضی خانه‌هایش خالی ماندهفصل ۰۴ — پیوندِ جدول با خودش، و `CROSS JOIN`
  5. دو دایرهٔ متقاطع روی کاغذ که ناحیهٔ اشتراکشان با هاشورِ متفاوتی مشخص شدهفصل ۰۵ — `UNION`، `INTERSECT`، `EXCEPT`
  6. قوطی‌ای که داخلش قوطیِ کوچک‌تری هست و لولهٔ کوچک، محتوای قوطیِ درونی را به بیرونی می‌دهدفصل ۰۶ — پرسش داخلِ پرسش
  7. چند حوضچهٔ پله‌ای که آب از هرکدام به بعدی می‌ریزد و هر پله شیرِ نمونه‌برداریِ خودش را داردفصل ۰۷ — `WITH`: پرسشِ بلند را خوانا کن
  8. سه پیمانهٔ متفاوت روی یک میز که هرکدام یک قطعهٔ واحد را می‌سنجند و سه عددِ متفاوت نشان می‌دهندفصل ۰۸ — پروژه: یک پاسخ از سه جدول
۴مدلِ داده‌ای که نمی‌پوسدترم ۴ · ۹ فصلترم ۴ آوند — مدلِ داده: قالبی با شیارهای شکل‌دار که قطعهٔ نامناسب را راه نمی‌دهد
  1. یک انبار با سه پیمانهٔ متفاوت که هر سه از یک تودهٔ واحد پر می‌شوند و سه سطح متفاوت نشان می‌دهندفصل ۰۱ — از پرسش تا جدول: دانه‌بندیرایگان
  2. چند قفلِ باز و بسته روی یک تختهٔ کلید که فقط یکی از آن‌ها کلیدِ منحصربه‌فردِ خودش را داردفصل ۰۲ — کلید: چه چیزی یک سطر را یکتا می‌کند
  3. یک زنجیرِ فلزی که یکی از حلقه‌هایش باز مانده و به هیچ حلقهٔ دیگری وصل نیستفصل ۰۳ — کلیدِ خارجی و سطرِ یتیم
  4. یک بایگانی که یک برگهٔ واحد در ده کشوی مختلف کپی شده و یکی از کپی‌ها با بقیه فرق داردفصل ۰۴ — هر واقعیت فقط یک جا
  5. یک قفسهٔ ابزار با نسخهٔ دومِ یک ابزار که نزدیک دست گذاشته شده و نسخهٔ اصلی در انتهای قفسه ماندهفصل ۰۵ — کِی عمداً تکرار می‌کنیم
  6. یک غربالِ چندطبقه که هر طبقه سوراخ‌های شکل‌دارِ متفاوتی دارد و در هر طبقه چند قطعه پشتِ آن ماندهفصل ۰۶ — قانونی که پایگاه داده خودش اجرا می‌کند
  7. یک خط‌کشِ زمانی با دو نشانگر که یکی درست روی خط مرزی ایستاده و دیگری یک پله جلوترفصل ۰۷ — زمان را چطور ذخیره کنیم
  8. دو ریلِ موازی که یک واگن از یکی به دیگری منتقل می‌شود در حالی که هر دو ریل هنوز کامل‌اندفصل ۰۸ — اسکیما عوض می‌شود
  9. یک کارگاهِ مونتاژ که قطعه‌های نامرتب از یک سر وارد و یک دستگاهِ کامل از سرِ دیگر خارج می‌شودفصل ۰۹ — پروژه: یک `CSV` کثیف را به اسکیمای درست تبدیل کن
۵کارایی که اندازه می‌گیریترم ۵ · ۸ فصلترم ۵ آوند — کارایی: تودهٔ نامرتب با مسیرِ جست‌وجوی طولانی در برابرِ رَکِ زبانه‌دار با مسیرِ کوتاه، و کرنومتری میانشان
  1. پنج کرنومترِ یکسان روی یک میز که عقربه‌هایشان کمی با هم فرق دارد و کرنومترِ وسطی روی یک پایهٔ کوچک جدا گذاشته شدهفصل ۰۱ — اول اندازه بگیررایگان
  2. ذره‌بینی که روی نقشهٔ یک ساختمان گرفته شده و دو مسیرِ متفاوت را روی همان نقشه نشان می‌دهدفصل ۰۲ — `EXPLAIN QUERY PLAN`: ذره‌بینِ دوره
  3. درختی که از یک ریشه به دو شاخه و از هر شاخه به دو شاخهٔ دیگر می‌رسد و کنارش یک ستونِ بلند از خانه‌های پشتِ سرِ همفصل ۰۳ — `index`: چه چیزی را سریع می‌کند، و به چه قیمتی
  4. قفلِ باز و کلیدی که دندانه‌هایش کاملاً درست است ولی زاویه‌اش با سوراخِ قفل یکی نیستفصل ۰۴ — ⚠️ `index`ی که کار نمی‌کند
  5. دو مسیرِ کالسکه‌ای که یکی بعد از هر جعبه دروازه‌ای را می‌بندد و باز می‌کند و دیگری همهٔ جعبه‌ها را می‌برد و یک بار دروازه را می‌بنددفصل ۰۵ — نوشتن، تراکنش، و سرعت
  6. دو مسیرِ لوله‌کشی که از یک منبع به یک مخزن می‌رسند، یکی با یک شیرِ باز در ابتدا و دیگری با همان شیر در انتهافصل ۰۶ — همان پاسخ، پرسشِ سریع‌تر
  7. یک لولهٔ باریک که چهار خطِ ورودی به آن می‌رسند و فقط یکی در هر لحظه از آن رد می‌شود، در کنارِ چهار لولهٔ موازیِ برداشتفصل ۰۷ — مرزها: کِی `sqlite3` بس نیست
  8. یک میزِ کار با چهار ابزارِ متفاوت که هر چهار روی یک قطعهٔ یکسان امتحان شده‌اند و یکی از چهار جای قطعه را خراب کردهفصل ۰۸ — پروژه: یک پرسشِ کند را با عدد سریع کن
۶از عدد تا تصمیمترم ۶ · ۹ فصلترم ۶ آوند — از عدد تا تصمیم: ظرفِ مدرج که سطحش به ترازو منتقل می‌شود و تابلوی دوشاخه‌ای که یک بازویش پررنگ است
  1. یک سامانهٔ شیشه‌ای بسته که آب از یک مخزنِ کوچک از راه سه حلقهٔ موازی می‌گذرد و پیمانهٔ انتهایی خیلی بالاتر از کلِ آبِ مخزن پر شده استفصل ۰۱ — خواندنِ پرسشی که کسِ دیگری نوشتهرایگان
  2. یک درگاه که دو شمارندهٔ مکانیکی کنارش نصب شده و هرکدام مهره‌ها را در لوله‌ای جدا انباشته‌اند، با دو ارتفاعِ کاملاً متفاوتفصل ۰۲ — تعریفِ سنجه: قبل از اینکه بشماری
  3. یک ردیف قایق روی آب که چند تایشان زیر خط آب فرو رفته‌اند و یک ناظر بالای سطح فقط قایق‌های شناور را می‌شماردفصل ۰۳ — ⚠️ پرسشی که دروغ می‌گوید
  4. دو قیف یکسان که هرکدام از دو مخزنِ شن درشت و ریز تغذیه می‌شوند ولی با نسبت‌های وارونه، و دو تودهٔ خروجیِ کاملاً نابرابر می‌سازندفصل ۰۴ — مقایسهٔ منصفانه
  5. خط‌کشی با ابری از نشانه‌های تکراری، دو خط عمودی که لبه‌های ابر را می‌بندند، و دو پیکان که یکی داخل ابر و دیگری بیرون آن نشسته استفصل ۰۵ — آیا این اختلاف واقعی است؟
  6. یک ترازوی اهرمی با تکیه‌گاهِ لغزان که وزنهٔ متحرکش روی بازو جابه‌جا می‌شود تا نقطهٔ تعادل پیدا شودفصل ۰۶ — تفاوتِ یک عدد و یک تصمیم
  7. یک شاسیِ حروف‌چینی که فقط یک سطرِ بزرگ در آن بسته شده و کنارش یک سینیِ پر از حروفِ ریزِ چیده‌نشده مانده استفصل ۰۷ — گزارشی که کسی می‌خواند
  8. یک ظرفِ نمونهٔ آزمایشگاهی که مهر و برچسب خورده، کنارِ ظرفِ همانندی که بازمانده و محتویاتش تبخیر شده استفصل ۰۸ — تحلیلی که فردا هم همان است
  9. یک میزِ کارِ فنی که هفت ابزارِ مختلف روی آن به‌ترتیب چیده شده و در انتهای ردیف یک قطعهٔ مونتاژشدهٔ واحد ایستاده استفصل ۰۹ — پروژهٔ نهایی: از یک پرسشِ واقعی تا یک توصیهٔ قابلِ اجرا