MYSQL學習筆記(十五)資料插入
阿新 • • 發佈:2019-01-23
- 插入完整的行
INSERT INTO Customers(cust_id,
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country,
cust_contact,
cust_email)
VALUES(‘1000000006’,
‘Toy Land’,
‘123 Any Street’,
‘New York’,
‘NY’,
‘11111’,
‘USA’,
NULL,
NULL);
插入列表後的括號明確給出列名,下面的值對應順序插入
此情況下可不必與表中實際列順序相同
若不給出明確列名,必須按該表實際列順序插入 - 插入部分行
INSERT INTO Customers(cust_id,
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country)
VALUES(‘1000000006’,
‘Toy Land’,
‘123 Any Street’,
‘New York’,
‘NY’,
‘11111’,
‘USA’);
因為前面cust_contact和cust_email為NULL值,插入式可忽略
可忽略的列要麼是NULL值,要麼在表定義中給出預設值 - 插入檢索出的資料
INSERT INTO Customers(cust_id,
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country)
SELECT cust_id,
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country
FROM CustNew;
這個例子將一個名為CustNew的表中讀出資料並插入到Customers表
SELECT第一列無論列名是什麼,都將填充表列中指定第一列,其它列同理
INSERT SELECT中SELECT語句可包含WHERE子句以過濾插入資料 - 插入多個行
可以使用多條INSERT語句,甚至可以一次提交它們,每條語句後面加分號
或者,只要每條INSERT語句中的列名相同,可如下組合:
INSERT INTO ——(——)
VALUES(——),
(——); - 從一個表複製到另一個表
GREATE TABLE —— AS
SELECT * FROM ——
將一個表的資料完全複製到一個新建立的表