#### 创建数据库
create datebase mydatabase;
show database;
#### 删除数据库
drop database mydatabase;
#### 使用数据库
use mydatabase;
#### 创建数据表格式
create table 表名(
列名 数据类型 约束,
列名 数据类型 约束,
列名 数据类型 约束
)
创建用户表,用户编号,姓名,用户的地址
create table users(
uid INT PRIMARY KEY AUTO_INCREMENT ,
uname VARCHAR(20),
uaddress VARCHAR(200 ),
)
主键:标识唯一性,不具备任何含义,保证列数据的唯一性和非空性 primary keys
让主键列数据实现自动增长
SHOW TABLES 显示所有数据表
DESC users 查看表的结构
DROP tables users 删除数据表
添加列,添加字段
alter table 表名 add 列名 数据类型 约束
ALTER TABLE users ADD tel INT
修改列,在原有的列上修改
修改列名,数据类型 约束
alter table 表名 modify 列名 数据类型 约束
alter table users modify tel varchar(50)
修改列名
alter table 表名 change 旧列名 新列名 数据类型 约束
alter table users change tel newtel double
删除列
alter table 表名 drop 列名
alter table users drop newtel;
修改表名
rename table 表名 to 新名
rename table users to newusers;
向数据表中添加数据 insert
格式:
insert into 表名(列名1,列名2,列名3) values (值1,值2,值3)
注意:
列名,表名问题
对应问题,个数,数据类型
除了数字外都要加单引号
create table product(
--主键列,自动增长
id INT PRIMARY KEY AUTO_INCREMENT
--商品名字,可变字符
pname VARCHAR(100) NOT NULL,
-- 商品价格,double
prince DOUBLE
);
INSERT INTO product (id,pname,price) values (1,'笔记本',555.59)
添加数据格式,不考虑主键
格式:insert into 表名 (列名) values (值)
insert into product(pname,price) values('洗衣机',800)
添加数据格式,所有值全给出
格式:
insert into 表名 values (全列值)
insert into produce values (4,'微波炉',300.25)
添加数据格式,批量写入
insert into 表名 (列名1,列名2,列名3) values(值1,值2,值3),(值1,值2,值3)
insert into product (pname,price) values
('智能机器人',25555.92)
('沙发',555.23)
对数据进行更新操作
数据在原有基础上进行修改
格式:
update 表名 set 列1=值1,列2=值2 where 条件
where 条件:数据中的唯一性
update product set price = 155599 where id=2
修改条件的写法
id=6
id<>6 不等于
id<=6
与或非
与 and
或 or
非 not
id in (1,3,4,5) 包含
将笔记本和空调价格全部改为2000
update product set price = 2000 where id =2 or id=2
删除表中的数据
格式:
delete from 表名 where 条件
drop table 表名 删除整个数据表
delete from product where id=8
乱码 set names 'gbk'
查询指定列的数据
格式:
select 列名,列2 from 表名;
查询所有列的数据
格式:
select * from 表名;
查询去掉重复记录
distinct 关键字 跟随列名
select distinct zname from zhangwu
查询重新命名列
as 关键字
select zname as 'name' from zhangwu
查询数据中,直接进行数学计算
列对数字进行计算
select zname,zmoney+1000 as 'sum' from zhangwu
查询所有吃饭支出
select * from zhangwu where zname='吃饭支出'
between and 方式
select * from zhangwu where zmoney between 2000 and 5000
in 方式
select * from zhangwu where zmoney in (2000,5000)
like 模糊查询,配合通配符
select * from zhangwu where zname like '%支出%'
查询帐务名字,五个字符的 ,下划线
select * from zhangwu where zname like '_____'
查询帐务不为空
is not null
查询,对结果集进行排序
升序,降序,对指定列排序
order by 列名 [desc][asc]
升序 asc 降序 desc
select * from zhangwu order by zmoney
select * from zhangwu order by zmoney desc
----先过滤条件,where查询结果再排序
select * from zhangwu where zname like '%支出%' order by zmoney desc
使用聚合函数进行计算
count 求和,对表中的数据个数求和 count(列名)
select count(*)as 'count' from zhangwu
sum 求和
分组统计:
查询所有数据
吃饭支出 共计多少
工资收入 共计多少
group by 被分组的列名
必须跟随聚合函数
select 查询的时候,被分组的列,要出现的select选择列的后面
select sum(zmoney),zname from zhangwu group by zname
分组后再次过滤
having
select sum(zmoney) as 'getsum' ,zname from zhangwu zname like '%支出%'
group by zname
having getsum>5000
网友评论