Skip to content

Koopa0/postgres

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PostgreSQL 教學專案

從第一原理到進階特性的完整 PostgreSQL 學習路徑,基於 DDIA 原則和實際電商平台場景。

專案簡介

本教學從資料庫的本質出發,循序漸進涵蓋 PostgreSQL 基礎到專家級特性。包含:

  • 32 章完整課程,從基礎到專家級
  • 32 張表的電商平台 Schema,提供實戰練習
  • 整合 DDIA (Designing Data-Intensive Applications) 核心概念
  • PostgreSQL 18 最新特性解析
  • 效能優化與生產環境最佳實踐

適用對象:零基礎到進階使用者。每章標示難度等級與先修要求。

快速開始

環境需求

  • PostgreSQL 18+
  • Go 1.25+��選用,用於程式碼範例)
  • Docker & Docker Compose(建議)

安裝步驟

# 複製專案
git clone https://github.com/Koopa0/postgres-tutorial.git
cd postgres-tutorial

# 啟動 PostgreSQL 和 pgAdmin
docker-compose up -d

# 等待 PostgreSQL 啟動完成(約 5-10 秒)
docker-compose exec postgres pg_isready -U postgres

# 匯入 Schema(會自動執行 shared/sql/ 下的 SQL 檔案)
# 如需重新匯入:
docker-compose exec -T postgres psql -U postgres -d ecommerce_dev < shared/sql/complete_schema.sql

# 產生測試資料
docker-compose exec -T postgres psql -U postgres -d ecommerce_dev < scripts/generate_test_data_small.sql

# 連接資料庫
docker-compose exec postgres psql -U postgres -d ecommerce_dev

# 或使用 pgAdmin(瀏覽器打開 http://localhost:5050)
# 帳號:admin@example.com 密碼:admin

課程大綱

第一部分:基礎觀念(第 1-6 章)

理解核心資料庫概念與 PostgreSQL 基礎。

章節 標題 主題 狀態
1 資料庫的本質 為何需要資料庫、聲明式 vs 命令式 已完成
2 SQL 設計哲學 關聯式模型、集合論 已完成
3 關聯式模型深入 正規化理論、函數相依性、Schema 設計 已完成
4 ACID 特性深入 交易、隔離層級、MVCC、並發控制 已完成
5 OLTP vs OLAP 工作負載特性、設計取捨 已完成
6 PostgreSQL 入門 安裝、設定、工具 已完成

第二部分:核心功能(第 7-12 章)

PostgreSQL 資料型別、查詢、操作。

章節 標題 主題 狀態
7 資料型別系統 數值、字串、時間、JSONB、陣列 規劃中
8 Schema 設計 正規化、索引策略、約束 規劃中
9 SELECT 查詢 基本查詢、排序、分頁 規劃中
10 WHERE 過濾 ��件運算式、模式比對 規劃中
11 資料操作 INSERT、UPDATE、DELETE 規劃中
12 聚合與分組 GROUP BY、HAVING、聚合函式 規劃中

第三部分:進階查詢(第 13-15 章)

複雜 JOIN、CTE、視窗函式。

第四部分:效能優化(第 16-19 章)

索引原理、查詢優化、MVCC、並發控制。

第五部分:專家主題(第 20-24 章)

PostgreSQL 18 特性、分區表、複製、OLAP 設計。

專案結構

postgres-tutorial/
├── chapter-*/              # 各章內容
│   └── README.md          # 理論、教學與實戰練習
├── shared/sql/            # 資料庫 Schema(32 表的電商系統)
├── scripts/               # 測試資料產生器
├── docker-compose.yml     # 開發環境配置
└── README.md              # 本檔案

學習資源

完整的學習資源都整合在各章節的 README.md 中,包含:

  • 理論講解與概念建立
  • 實際操作範例與 SQL 代碼
  • 引導式思考問題
  • 整合式練習與參考答案
  • 真實業務場景分析

貢獻

歡迎提交 Issue 或 Pull Request。請確保:

  • 遵循現有的文檔風格
  • 測試所有 SQL 範例在 PostgreSQL 18 上運行正常
  • 保持教學內容的清晰與準確

授權

本專案採用 MIT License 授權。

參考文獻

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •