msyq>\h:查看幫助信息 一、\h 或 help 或 ? 二、\G:分組顯示結果 三、\T 或 tee:將結果和命令輸出到文本 四、\c 或 CTRL+c:清除當前語句 五、\s 或 status:獲取MySQL服務器狀態信息 六、\. 或 source:執行外部SQL腳本:二進制日誌截取、備份出來的SQL腳本 七、\u 或use:切換數據庫
DDL:數據庫(對象)定義語言 DCL:數據庫控制語言(grant revoke) DML:數據(行)操做語言(update delete insert) DQL: 數據查詢語言(show、select)
查看數據庫mysql
mysql> show databases; mysql> show databases like 'test%'; #==>模糊查詢,以test開頭的數據庫
建立數據庫sql
mysql> create database oldboy;
查看建庫的語句數據庫
show create database oldboy\G
指定字符集建庫服務器
mysql>create database llf CHARACTER SET utf8 ; mysql>show create database llf;
查看幫助函數
mysql>help create database;
刪除數據庫ui
mysql> drop database llf;
改變庫的字符集日誌
mysql> alter database oldboy charset utf8mb4; mysql> show create database oldboy;
切庫code
user oldboy
查看當前所在的庫對象
select database();
查看當前的用戶排序
select user();
查看庫裏的表
show tables;
DDL&&DCL語句之管理用戶
用戶: ‘user’@‘主機域’ 幫助: ? Account Management 經常使用命令: 1.查看當前用戶 2.建立用戶 3.查看用戶對應的權限 4.刪除用戶 5.給用戶受權 6.收回權限 7.工做博客受權
建立表
create table <表名> (<字段名1> <類型1> ,…<字段名n> <類型n>); mysql> create table t1(id int,name varchar(20)); 獲取幫助 help create table;
查詢表
mysql> show tables;
查看建表語句
mysql> show create table t1\G
查看錶結構
mysql> desc t1;
刪除表
mysql> drop table t1;
修改表
在表中添加一列 mysql> alter table t1 add age int; 添加多列 mysql> alter table t1 add sid int,add bridate datetime; 在指定列後添加一列 mysql> alter table t1 add i_name varchar(20) after name; 在表中最前添加一列 mysql> alter table t1 add num int first; 刪除列 mysql> alter table t1 drop num; 修改列名 mysql> alter table t1 change name stu_name varchar(20); 修改列屬性 mysql> alter table t1 modify sid varchar(20); 修改表名 mysql> rename table t1 to t2; mysql> alter table t2 rename to t1;
插入內容(insert)
insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )] mysql> insert into t2 values(1,'zhang'); 添加多行內容 mysql> insert into t2 values(2,'yang'),(3,'li'),(4,'yi'); 經過列名添加內容 mysql> insert into t2(name) values("zhangggg");
查詢表內容
mysql> select * from t2;
更新表(update)
mysql> update t2 set name='zhang123' where id=4;
刪除表內容
mysql> delete from t2 where id=4; 刪除表中全部行,比較危險。一行一行刪除表中數據。 mysql> delete from t2; 在物理上刪除表數據,速度比較快。 mysql> truncate table t1;
select基本查詢
SELECT * FROM city; SELECT NAME,Population FROM city;
select條件查詢where
SELECT *|{[DISTINCT] column|select_expr[alias], ...]}[FROM [database.]table][WHERE conditions]; WHERE條件又叫作過濾條件,它從FROM子句的中間結果中去掉全部條件conditions不爲TRUE(而爲FALSE或者NULL)的行 WHERE子句跟在FROM子句後面 不能在WHERE子句中使用列別名
where字句的基本使用
一、查詢中國(CHN)全部的城市信息 SELECT * FROM world.`city` WHERE CountryCode='CHN'; or SELECT * FROM world.`city` WHERE CountryCode='chn'; 二、查詢中國(CHN)安徽省全部的城市信息。 SELECT * FROM city WHERE CountryCode="CHN" AND District="anhui"; 三、查詢世界上人口數量在10w-20w城市信息 SELECT * FROM city WHERE Population BETWEEN 100000 AND 200000; 四、中國或者日本的全部城市信息 SELECT * FROM city WHERE CountryCode IN ('chn',"jpn"); 注意: WHERE中出現的字符串和日期字面量必須使用引號括起來 這裏,字符串字面量寫成大寫或小寫結果都同樣,即不區分大小寫進行查詢。 這和ORACLE不一樣,ORACLE中WHERE條件中的字面量是區分大小寫的
模糊查詢
SELECT * FROM city WHERE CountryCode LIKE 'ch%';
select 排序與限制
ORDER BY子句用來排序行 Asc:執行升序排序。默認值 DEsc:執行降序排序 ORDER BY子句通常在SELECT語句的最後面 LIMIT子句: MySQL特有的子句。 它是SELECT語句中的最後一個子句(在order by後面)。 它用來表示從結果集中選取最前面或最後面的幾行。 偏移量offset的最小值爲0。 語法: limit <獲取的行數> [OFFSET <跳過的行數>] 或者limit [<跳過的行數>,] <獲取的行數> SELECT * FROM city ORDER BY 按照人口數量排序輸出中國的城市信息(ASC\DESC) SELECT * FROM city WHERE CountryCode="CHN" ORDER BY Population DESC;(從大到小) SELECT * FROM world.`city` WHERE countrycode='CHN' ORDER BY id DESC ; 按照列數來進行排序 SELECT * FROM city ORDER BY 5 DESC ; 取第1-10行 SELECT * FROM world.`city` WHERE countrycode='CHN' ORDER BY 5 DESC LIMIT 20; 取第11-20行 SELECT * FROM world.`city` WHERE countrycode='CHN' ORDER BY 5 DESC LIMIT 10,10 ; SELECT * FROM world.`city` WHERE countrycode='CHN' ORDER BY 5 DESC LIMIT 10 OFFSET 10 ;
傳統的鏈接寫法(使用where) ---- 中國全部城市信息+使用語言 SELECT ci.name,ci.countrycode,ci.Population,cl.language FROM city AS ci,countrylanguage AS cl WHERE ci.countrycode="chn" AND cl.countrycode="chn";
經常使用鏈接寫法(join on )
查詢青島這個城市,所在的國傢俱體叫什麼名字 SELECT ci.`Name`,ci.`CountryCode`,ci.`Population`,cl.name FROM city AS ci JOIN country AS cl ON ci.`CountryCode`=cl.code AND ci.name="qingdao"、
group by +聚合函數(avg()、max()、min()、sum())
算出中國人口總數 SELECT CountryCode,SUM(Population) FROM city WHERE CountryCode="chn" ORDER BY CountryCode