關聯式資料的鍵

Snowflake 資料建模入門

Nuno Rocha

Director of Engineering

關聯式資料入門

堆滿多種商品的實體

Snowflake 資料建模入門

關聯式資料入門(1)

  • 關聯式資料:以個別實體與鍵組織的結構化資料,用鍵建立彼此關係

將商品拆成三個實體

Snowflake 資料建模入門

鍵在關聯式資料中的威力

  • 資料結構與完整性:鍵將資料組成資料表並維持正確性
  • 對應真實世界:鍵促成有意義連結,反映複雜互動
  • 存取效率:鍵讓擷取與查詢更順暢
  • 可擴展性:鍵確保成長時仍維持完整性
Snowflake 資料建模入門

主鍵與外鍵複習

  • 主鍵(Primary Key):唯一識別每筆實體紀錄
CREATE OR REPLACE TABLE products (
    id NUMBER(10,0) PRIMARY KEY,
    name VARCHAR(255)
);
Snowflake 資料建模入門

主鍵與外鍵複習(1)

  • 主鍵(Primary Key):唯一識別每筆實體紀錄
  • 外鍵(Foreign Key):將一個實體連到另一個實體
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255)


);
Snowflake 資料建模入門

主鍵與外鍵複習(2)

  • 主鍵(Primary Key):唯一識別每筆實體紀錄
  • 外鍵(Foreign Key):將一個實體連到另一個實體
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255),
    manufacturer_id NUMBER(10,0),
    FOREIGN KEY (manufacturer_id) REFERENCES manufacturers(manufacturer_id)
);
Snowflake 資料建模入門

資料模型中的關係

包含商品、製造商與商品細節實體的資料模型

Snowflake 資料建模入門

資料模型中的關係(1)

新的分類實體

Snowflake 資料建模入門

調整資料模型

CREATE OR REPLACE TABLE categories (
  category_id NUMBER(10,0) PRIMARY KEY,
  category VARCHAR(255)
);

分類實體相對商品實體的基數

Snowflake 資料建模入門

調整資料模型(1)

ALTER TABLE products
ADD COLUMN category_id NUMBER(10,0);
ALTER TABLE products
ADD FOREIGN KEY (category_id) REFERENCES categories(category_id);
Snowflake 資料建模入門

調整資料模型(2)

商品最終實體模型

Snowflake 資料建模入門

術語與指令總覽

  • 關聯式資料:以個別實體與鍵組織的結構化資料,用鍵建立關係
  • ALTER TABLE:用於修改現有實體結構的 SQL 指令
  • ADD:與 ALTER TABLE 搭配,為實體新增元素的 SQL 指令
ALTER TABLE table_name
ADD COLUMN column_name column_datatype;

ALTER TABLE table_name
ADD PRIMARY KEY (column_name);

ALTER TABLE table_name
ADD FOREIGN KEY (column_name) REFERENCES foreign_table(PK_from_foreign_table);
Snowflake 資料建模入門

一起來練習吧!

Snowflake 資料建模入門

Preparing Video For Download...