17、建立表
CREATE TABLE tbname(columnname1 型別 約束條件, columnname2 型別 約束條件,…);
三大型別:數值型,時間日期型,字串型別
六大約束條件:
PRIMARY KEY(主鍵) NOT NULL(非空) AUTO_INCREMENT(自增長)
UNIQUE(值唯一) FOREIGN KEY(外來鍵) DEFAULT(預設值)
例如:CREATE TABLE student(id tinyint unsigned auto_increment primary key,sname varchar(10)
not null,sex enum(`男`,`女`,`保密`) default `保密`,age tinyint unsigned not null,tel char(11) unique);
18、展示表結構
SHOW COLUMNS FROM tbname;
19、展示當前資料庫中的所有表
SHOW TABLES;
20、往表中插入/新增資料
往指定列一一對應插入/新增資料
INSERT INTO tbname(colname1,colname2,…) VALUES(values1,values2,…);
如果省略列欄位,表示往表中所有列都插入值
INSERT INTO tbname VALUES(values1,values2,…),(values1,values2,…);
21、檢視錶中的資料
檢視錶中所有列的資料,*號表示所有列
SELECT * FROM tbname;
檢視指定列的資料
SELECT colname1,colname2,… FROM tbname;
#複製表
CREATE TABLE tbname1 AS SELECT * FROM tbname2;
Day2
22、刪除表中的資料
沒有WHERE條件語句,會刪除表中的所有資料
DELETE FROM tbname;
如果要刪除某條資料,需要新增WHERE 條件語句
DELETE FROM tbname WHERE empno = ‘E00001’;
注意:DELETE刪除資料,邏輯刪除,不釋放空間
23、刪除表中的所有資料,沒有WEHRE條件語句,物理刪除,會釋放空間
TRUNCATE TABLE tbname;
注意:TRUNCATE不能刪除有外來鍵關聯的表中資料,只能用DELETE刪除
24、更新/修改表中的資料
沒有WHERE條件語句,會更新指定列的所有的資料
UPDATE tbname SET colunm1=’新的值’;
如果要更新某條資料,需要新增WHERE條件語句
UPDATE tbname SET colunm1=’新的值’ WHERE 條件語句;
#思考:同時更新兩列的資料
UPDATE emp SET comm = 8888,sal = 9999 WHERE empno = `E00005`;
25、刪除表
DROP TABLE tbname;
26、查詢指定列的資料
SELECT 3*5;
SELECT column1,column2,… FROM tbname WHERE 條件語句;
SELECT * FROM tbname WHERE 條件語句;
條件語句裡支援
數學結果運算子(=,<,>,>=,<=,!=,<>,is null,is not null)
模式匹配(like,not like,in,not in)
like用法:%代表0個或多個任意字元,_代表一個任意字元
例如:SELECT * FROM emp WHERE job like `戰士__`;
in用法:job in (`法師`,`坦克`),其中值之間是或的關係
邏輯運算子(and,or)
and:且的意思,表示同時滿足
or:或的意思,表示滿足其中一個條件即可
例如:SELECT * FROM emp WHERE job =`坦克` or deptno = `F01`;
27、聚合函式
max() 最大值:SELECT max(sal) FROM emp;
min() 最小值
avg() 平均值
sum() 求和
count() 計數,統計
內建函式
lcase() 把字串中大寫字母全部轉換成小寫字母
ucase() 把字串中小寫字母全部轉換成大寫字母
round(x,y) 四捨五入:x代表要四捨五入的值,y代表精度
例如:SELECT round(avg(sal),2) FROM emp;
注意:①WHERE條件語句裡不能直接出現聚合函式②聚合函式不能巢狀聚合函式