首先要安装mysql,这里就不多说明了
直接开始:
一、数据库相关操作:
**1.数据库创建操作**
①.创建一个数据库
create database users;
②.使用数据库
use users;
**2.数据库查询操作**
①.查询所有的数据库
show DATABASES;
②.查看当前使用的数据库
select database();
③.查看数据库编码
use users;
show create database users;
**3.数据库删除操作**
①.删除一个数据库
drop database users;
二、数据库中表相关操作
1.数据库表创建操作
①.创建一张表
create table user(id int(10) primary key,name varchar(20),password varchar(20));
2.数据库表查看操作
①.查看当前库中所有的表
show tables;
②.查看当前数据库的字段等信息
DESC user;
③.查看当前数据库的字符编码
show create table user;
3.数据库表删除操作
①.删除一张表
drop table user;
4.数据库表修改操作
①.添加一列
alter table user add info varchar(20) not null;
②.修改表中列的长度和类型
alter table user modify info varchar(50) null;
③.修改表中的列名
alter table user CHANGE info info2 varchar(50) null;
④.修改表的名称
rename table user to stu_user;
⑤.修改表的字符集(gbk为编码格式)
alter table stu_user CHARACTER set gbk;
三、数据库表记录相关操作
1.数据库表记录插入操作
①.向指定列插入数据
insert into stu_user(id,name,password) values(3,NULL,NULL);
②.向所有列插入数据
insert into stu_user(id,name,PASSWORD) values (1,‘陈周瑜’,‘123’);
2.数据库表记录修改操作
①.带条件修改
update stu_user set name = '陈周瑜',password ='我是煞笔'where id = 1;
②.不带条件修改
update stu_user set name = '煞笔',password ='321';
3.数据库表记录删除操作
①.带条件修改
delete from stu_user where id =1;
②.不带条件修改
delete from stu_user;
③.测试delete与truncate
delete删除的时候是一条一条的删除记录,它配合事务,可以将删除的数据找回。
truncate删除,它是将整个表摧毁,然后再创建一张一模一样的表。它删除的数据无法找回。
delete删除,uid不会重置!而使用truncate操作,uid会重置
数据库表记录查询操作=========================================================================
1.3.1 准备工作
#创建商品表
create table product(
pid int primary key auto_increment,
pname varchar(20),
price double,
pdate timestamp
)
1.3.2添加数据
#自动增长列:auto_increment,要求:1,必须整型(int) 2.必须是主键
insert into product values (null,'谭妮平',0.01,null);
insert into product values (null,'李士雪',38,null);
insert into product values (null,'左慈',-998,null);
insert into product values (null,'黄迎',99999,null);
insert into product values (null,'南国强',99998,null);
insert into product values (null,'士兵',1,null);
insert into product values (null,'李士兵',698,null);
1.3.3 简单查询
1.查询所有商品
select * from product;
2.查询商品名和商品价格
select pname,price from product;
3.查询所有商品信息使用表别名
select p.pid,p.pname,p.price,p.pdate from product p;
4.查询商品名,使用列别名
select p.pid as ppid,p.pname,p.price,p.pdate from product p;
5.去掉重复值(按照价格)
select DISTINCT(price) from product;
6.将所有的商品的价格+10进行显示
select pname, price+10 as price from product;
1.3.4 条件查询
1.查询商品名称为"左慈"的商品信息
select * from product where pname = '左慈';
2.查询价格>60元的所有商品信息
select * from product where price >60;
3.查询商品名称含有"士"字的商品信息
select * from product where pname like '%士%';
4.查询商品id在(3,6,9)范围内的所有商品信息
select * from product where pid in(3,6,9);
1.3.5 排序(asc/desc)
1.查询所有的商品,按价格进行排序(升序、降序)
select * from product GROUP BY price asc;
select * from product GROUP BY price DESC;
2.查询名称有"士"的商品信息并且按照价格降序排序
select * from product where pname like '%士%' GROUP BY price ASC;
select * from product where pname like '%士%' GROUP BY price deSC;
1.3.6 聚合
1.获得所有商品的价格的总和
select sum(price) from product;
2.获得所有商品的平均价格
select round(avg(price)) from product;
3.获得所有商品的个数
select count(*) from product;
1.3.7 分组
1.添加分类id (alter table product add cid varchar(32);)
2.初始化数据
update product set cid='1';
update product set cid='2' where pid in (5,6,7);
查询:
1.根据cid字段分组,分组后统计商品的个数。
select cid,count(*) from product GROUP BY cid;
2.根据cid分组,分组统计每组商品的平均价格,并且平均价格大于20000元。
select cid,avg(price) from product GROUP BY cid HAVING avg(price)>20000;