《深刻淺出mysql》讀書筆記

一、mysql安裝

二、SQL基礎

DDL、DML、DCL
(1)數據庫mysql

mysql -uroot -p;
create database test1;
show databases;
use test1;
drop database test1;

(2)表sql

//建立表
create table emp(ename varchar(10), sal decimal(10,2))

//查看錶定義
desc emp;

//刪除表
drop table emp;

//修改表
alter table emp modify ename varchar(20);(修改字段類型)
alter table emp add column age int(3);(增長字段)
alter table emp drop column age;(刪除字段)
alter table emp change age age1 int(4);(字段更名)
alter table emp add birth data after ename;(修改字段排列順序)
alter table emp modify age int(3) first;(修改字段age,把它放在最前面)
alter table emp rename emp1;(更改表名)

(3)數據數據庫

//插入數據
insert into emp (ename, age) values ('lala', 18);
select * from emp;

//更新數據
update emp set sal=4000 where ename='lisa';

//刪除數據
delete from emp where ename='dony';

//查詢數據
select * from emp;
select distinct deptno from emp;(查詢不重複的記錄)
select * from emp where deptno=1 and sal<3000;
select * from emp order by sal limit 1,3;(排序和限制)
select deptno, count(1) from emp group by deptno;(聚合)
select deptno, count(1) from emp group by deptno having count(1)>1;
select sum(sal),max(sal),min(sal) from emp;
//錶鏈接
//內鏈接僅選出兩張表中互相匹配的記錄,外鏈接會選出其餘不匹配的記錄
select ename, deptname from emp, dept where emp.deptno=dept.deptno
//外鏈接又分爲左鏈接和右鏈接:
//左鏈接:包含全部的左邊表中的記錄甚至是右邊表中沒有和它匹配的記錄
//右鏈接:包含全部的右邊表中的記錄甚至是左邊表中沒有和它匹配的記錄
select ename, deptname from emp left join dept on emp.deptp=dept.deptno

//子查詢:當進行查詢時,須要的條件是另一個select語句的結果。關鍵字主要包括: in, not in, =, !=, exists, not exists
select * from emp where deptno in(select deptno from dept)

//記錄聯合
使用union和union all關鍵字,使用union會把重複的數據去掉
select deptno from emp union select deptno from dept;

三、數據類型

主要分爲:數值類型、字符串類型、日期類型和時間類型code

相關文章
相關標籤/搜索