前面的文章我們學到了:資料庫用「表格」來儲存資料,讓資料格式統一、方便管理。
但你可能會想:「表格我知道啊,就像 Excel 那樣,有什麼好學的?」
其實資料庫的表格有一套專門的術語和概念,學會這些之後,你才能用正確的「語言」來描述你想對資料做的事情。
這篇文章會帶你認識資料庫表格的基本結構,並且練習如何把日常問題「翻譯」成資料庫的操作。
表格的基本組成
先來看一張圖,這是一個帳本表格的結構示意圖:
看完這張圖,我們來認識每個部分:
表格(Table)
圖中的整個帳本,就是一個「表格」。
表格是資料庫儲存資料的基本單位,一個表格用來存放「同一類」的資料。例如這張表專門存「交易紀錄」。
欄位(Column)
圖中用橘色標示的「日期」「動作」「金額」,就是「欄位」。
欄位是表格的「直行」,代表資料的共同屬性。Column 這個英文字,原本的意思是「柱子」,柱子是直直往下的,所以用來表示垂直的那一行。
列(Row)
圖中用綠色標示的橫列,就是「列」。
列是表格的「橫列」,代表一筆完整的資料。每一列都是獨立的,例如「3/7 存款 100」和「3/8 提款 50」是兩筆不同的資料。
格子(Cell)與值(Value)
圖中用紫色虛線框起來的地方,就是「格子」。
格子是欄和列交叉的位置,裡面填的內容叫做「值」。例如圖中框起來的格子,它的值是「提款」。
如何用欄與列描述資料操作?
學會了表格的結構之後,接下來要練習一個很重要的技能:
把日常的問題,翻譯成「欄」和「列」的操作。
這個技能非常重要,之後學習 SQL 語法的時候會一直用到。讓我們用剛才的帳本表格來練習。
範例一:計算提款次數
日常問題: 小明總共提款幾次?
翻譯成表格操作:
- 找到「動作」這個欄位
- 往下看,找出值是「提款」的列
- 數一數有幾列
操作過程:
| 日期 | 動作 | 金額 |
|---|---|---|
| 3/7 | 存款 | 100 |
| 3/8 | 提款 | 50 |
| 3/8 | 提款 | 50 |
| 3/9 | 存款 | 500 |
答案: 2 次
範例二:篩選特定日期的資料
日常問題: 小明在 3月8日 提款了多少錢?
翻譯成表格操作:
- 找到「日期」欄位,篩選出值是「3/8」的列
- 再從這些列中,找到「動作」欄位值是「提款」的列
- 把這些列的「金額」欄位的值加總起來
操作過程:
| 日期 | 動作 | 金額 |
|---|---|---|
| 3/7 | 存款 | 100 |
| 3/8 | 提款 | 50 |
| 3/8 | 提款 | 50 |
| 3/9 | 存款 | 500 |
答案: 50 + 50 = 100 元
範例三:計算日期區間的結餘
日常問題: 小明在 3月7日到3月9日 的結餘是多少?
這題比較複雜,因為「結餘」這個欄位並不存在於表格中。但我們可以用現有的欄位來計算:
結餘 = 存款總額 – 提款總額
翻譯成表格操作:
- 找到「日期」欄位,篩選出值在「3/7 到 3/9」之間的列
- 從這些列中,把「動作」是「存款」的金額加總
- 再把「動作」是「提款」的金額加總
- 兩者相減
操作過程:
步驟一:找出日期在 3/7 到 3/9 之間的列
| 日期 | 動作 | 金額 |
|---|---|---|
| 3/7 | 存款 | 100 |
| 3/8 | 提款 | 50 |
| 3/8 | 提款 | 50 |
| 3/9 | 存款 | 500 |
4 筆都符合。
步驟二:計算存款總額
動作是「存款」的:第 1 列(100)+ 第 4 列(500)= 600 元
步驟三:計算提款總額
動作是「提款」的:第 2 列(50)+ 第 3 列(50)= 100 元
步驟四:計算結餘
結餘 = 600 – 100 = 500 元
為什麼這個翻譯技能很重要?
你可能會想:「這不就是看表格嗎?有什麼難的?」
現在表格只有 4 筆資料,當然很簡單。但如果表格有 10 萬筆資料呢?你不可能用眼睛一筆一筆看。
這時候你需要用程式(SQL 語法)來幫你處理。而 SQL 語法的邏輯,就是我們剛才練習的那些操作:
- 從某個欄位篩選出符合條件的列
- 把某個欄位的值加總
- 把多個條件組合起來
現在練習用「欄」和「列」的方式思考問題,之後學 SQL 就會非常順利。
這個翻譯的過程,要練到像呼吸一樣自然。
小結
資料庫表格的基本結構:
| 術語 | 說明 |
|---|---|
| 表格(Table) | 儲存同一類資料的容器 |
| 欄位(Column) | 直行,代表資料的共同屬性 |
| 列(Row) | 橫列,代表一筆完整的資料 |
| 格子(Cell) | 欄和列交叉的位置 |
| 值(Value) | 格子裡面的內容 |
學會這些術語之後,你就能用正確的「語言」來描述資料庫的操作。
更重要的是,要練習把日常問題「翻譯」成表格操作——這是學習 SQL 的基礎,也是操作資料庫最核心的技能。