Day3--練習MySQL基礎語句

Sakauz發表於2019-03-23

一 、常用運算元據庫的命令

1.show databases; 檢視所有的資料庫
2.create database test; 建立一個叫test的資料庫
3.drop database test;刪除一個叫test的資料庫
4.use test;選中庫 ,在建表之前必須要選擇資料庫
5.show tables; 在選中的資料庫之中檢視所有的表
6.create table 表名 (欄位1 型別, 欄位2 型別);
7.desc 表名;檢視所在的表的欄位
8.drop table 表名; 刪除表
9.show create databases 庫名;檢視建立庫的詳細資訊
10.show create table 表名; 檢視建立表的詳細資訊
複製程式碼

二、修改表的命令

1.修改欄位型別 alter table 表名 modify 欄位 欄位型別;
2.新增新的欄位 alter table 表名 add 欄位 欄位型別
3.新增欄位並指定位置  alter table 表名 add 欄位 欄位型別   after 欄位;
4.刪除表欄位  alter table 表名 drop 欄位名;
5.修改指定的欄位  alter table 表名 change 原欄位名字  新的欄位名字 欄位型別
複製程式碼

三、對資料的操作

1.增加資料(insert)3種方式
    1.1 insert into 表名 values(值1,值2,...)(很少用)
    1.2 insert into 表名(欄位1,欄位2...) values(值1,值2,....);(較常用)
    1.3 insert into 表名(欄位1,欄位2...) values(值1,值2,....),(值1,值2,....),(值1,值2,....);
2.刪除資料(delete) delete from 表名 where 條件 注意:where 條件必須加,否則資料會被全部刪除
3.更新資料(update)  update 表名 set欄位1 = 值1, 欄位2 = 值2 where 條件
4.查詢資料(select)
    4.1 查詢表中的所有資料   select * from 表名
    4.2 指定資料查詢    select 欄位 from 表名 
    根據條件查詢出來的資料  select 欄位 from 表名 where 條件 (最常用的)
    where 條件後面跟的條件
     關係:>,<,>=,<=,!=  
     邏輯:or, and 
     區間:id between 4 and 6 ;閉區間,包含邊界
5.排序
select 欄位 from 表 order by 欄位  排序關鍵詞(desc | asc)
排序關鍵詞 desc 降序 asc 升序(預設)
    5.1 通過欄位來排序
    例如 :select * from star orser by money desc, age asc;   
    5.2 多欄位排序
    select 欄位 from 表 order by 欄位1  desc |asc,...欄位n desc| asc;
6.常用的統計函式 sum,avg,count,max,min
    只分組:select * from 表 group by 欄位
    例子: select count(sex) as re,sex from star group by sex having re > 3;
    分組統計: select count(sex) from star group by sex;
7.分組 select * from 表名  limit 偏移量,數量
    說明:
        8.1.不寫偏移量的話就是預設的為0
        8.2.實現分頁的時候必須寫偏移量
        偏移量怎麼計算?:
        limit (n-1)*數量 ,數量 
複製程式碼

四、多表聯合查詢

1.內連線
隱式內連線 select username,name from user,goods where user,gid=gods,gid;
顯示內連線
select username,from user inner join goods on user.gid=goods.gid;
select * from user left join goods on user.gid=goods.gid;
2.外連結
左連線 包含所有的左邊表中的記錄以及右邊表中沒有和他匹配的記錄
右連線 
select * from user where gid in(select gid from goods);
select * from user right jOin goods on user.gid=goods.gid;
子巢狀查詢
資料聯合查詢
select * from user left join goods on user.gid=goods.gid union select * from user right join goods on user.gid=goods.gid;
兩個表同時更新
update user u, goods g set u.gid=12,g.price=1 where u.id=2 and u.gid=g.gid;
複製程式碼

五、DCL 資料控制語言

1.建立使用者:create user'xiaoming'@'localhost' identified by '666666';
2.授權使用者:grant all on test.*to'xiaoming'@'localhost';
3.重新整理許可權:flush privileges;
4.取消授權:revoke all on test.* from 'xiaoming'@'localhost';
5.刪除使用者: drop user'xiaoming'@'localhost';
複製程式碼

六、DTL 資料事務語言

開啟事務:set autocommit=0;
操作回滾:rollback;
提交事務:commit;
複製程式碼

相關文章