隨堂練習參考解答:SELECT 查詢資料


--- 創建資料表 users
CREATE TABLE IF NOT EXISTS users (
    id INT PRIMARY KEY NOT NULL UNIQUE,
    username VARCHAR(12) NOT NULL,
    age INT,
    gender VARCHAR(6)
);

-- 插入 3 筆資料至 users 資料表
INSERT INTO users VALUES (
    1, 'Jack', 20, 'Male'
);
INSERT INTO users VALUES (
    2, 'May', 10, 'Male'
);
INSERT INTO users VALUES (
    3, 'Cindy', 34, 'Female'
);

--- 查詢 users 資料表中 gender 屬性
SELECT gender
FROM users;

查詢 gender 性別資料結果:

Male
Male
Female

SQLite 需要設定查詢顯示結果格式可以使用以下語法於查詢語法前(另外一種是透過 Python 操作整合 SQL 資料庫,即可使用 Python 語法進行操作資料庫):

注意:以下僅查詢格式僅適用於SQLite其餘關聯式資料庫(如:MySQL)不一定適用。

一、.mode column:分隔設定

-- 加上顯示格式設定使用分隔設定(注意在格式設定語法正後方不能加上註解,註解要放在上方或下方)
.mode column
-- 查詢特定欄位
SELECT username , age
FROM users;

Before:

Jack|20
May|10
Cindy|34

After:

Jack        20        
May         10        
Cindy       34

二、.headers on:加上標頭

-- 加上顯示格式設定使用分隔設定
.headers on
-- 查詢特定欄位
SELECT username , age
FROM users;

Before:

Jack|20
May|10
Cindy|34

After:

username|age
Jack|20
May|10
Cindy|34

三、.separator || "\n":每筆 row 資料可以透過 || 分隔(|| 可以為任意符號,例如:#)並透過換行符號換行(\n 代表換行符號,若要換兩行則改為 \n\n

-- 加上顯示格式設定
.separator || "\n"
-- 查詢特定欄位
SELECT username , age
FROM users;

顯示結果:

Jack||20
May||10
Cindy||34

使用兩個換行符號:

-- 加上顯示格式設定
.separator || "\n\n"
-- 查詢特定欄位
SELECT username , age
FROM users;

顯示結果:

Jack||20

May||10

Cindy||34

使用 # 分隔符號加上兩個換行符號:

-- 加上顯示格式設定
.separator # "\n\n"
-- 查詢特定欄位
SELECT username , age
FROM users;

顯示結果:

Jack#20

May#10

Cindy#34

搭配使用:

-- 加上顯示格式設定
.headers on
.separator || "\n\n"
-- 查詢特定欄位
SELECT username , age
FROM users;

顯示結果:

username||age

Jack||20

May||10

Cindy||34


問題討論區
加入問題討論
作業任務區
提交作業任務