SQL學習筆記

cyyyyyyyyyyyyy發表於2024-04-24
-- creat table

-- auto-generated definition
create table emp
(
    id        int         null comment '編號',
    workno    varchar(10) null comment '工號',
    name      varchar(10) null comment '名字',
    gender    char(1)       null comment '性別',
    age       int         null comment '年齡',
    idcard    char(18)    null comment '身份證號',
    entrydata date        null comment '入職時間',
    nickname  varchar(20) null comment '暱稱'
)comment '員工表';

-- data insert delete update select
-- 插入一條資料
INSERT INTO emp (id, workno, name, gender, age, idcard, entrydata, nickname)
VALUES (1, '001', '張三', '男', 25, '511721200510295396', '2022-01-01', '小張');

-- 插入另一條資料
INSERT INTO emp (id, workno, name, gender, age, idcard, entrydata, nickname)
VALUES (2, '002', '李四', '女', 28, '511721200510295396', '2022-02-01', '小李');

-- 刪除工號為 '002' 的員工
DELETE FROM emp WHERE workno = '002';

-- 更新工號為 '001' 的員工的暱稱為 '張小三'
UPDATE emp SET nickname = '張小三' WHERE workno = '001';

-- 將年齡大於 25 歲的員工的性別修改為 '男性'
UPDATE emp SET gender = '男' WHERE age > 25;

-- 查詢所有員工
SELECT * FROM emp;

-- 查詢年齡大於 25 歲的員工
SELECT * FROM emp WHERE age > 25;

-- 查詢名字為 '張三' 的員工
SELECT * FROM emp WHERE name = '張三';

-- table insert delete update select
-- 增加新列 email
ALTER TABLE emp ADD COLUMN email VARCHAR(50) AFTER nickname;

-- 刪除列 age
ALTER TABLE emp DROP COLUMN age;

-- 修改列 gender 的資料型別
ALTER TABLE emp MODIFY COLUMN gender VARCHAR(10);

-- 修改列名 idcard 為 identity_card
ALTER TABLE emp CHANGE COLUMN idcard identity_card CHAR(18);

-- 修改表註釋為新的員工表
ALTER TABLE emp COMMENT '新的員工表';

-- 查詢表結構
DESCRIBE emp;
DESC emp;

-- 查詢表結構
SHOW COLUMNS FROM emp;


相關文章