MySQL学习笔记

SQL 分类

DDL操作

1、查询

show databases;

select database()

2、创建

create database 【if not exists】 数据库名 default charset utf8mb4(四个字节 ,utf8不是少)

3、删除

Drop database 【if exits】 数据库名

4、使用

use 数据库名

查询所有表:

  • show tables

查询表结构:

  • desc 表明

创建

create table tb_user(
	id int comment '编号',
	name varchar(50) '年龄',
	age int comment '年龄',
	gender varchar(1) comment '性别'
);

show create table tb_user;

字符分类

char 性能高,varchar性能低,varchar随着输入的内容自动变长。

gender char(1)男女

案例:

create table emp(
	id int,
	workno varchar(10),
	name varchar(10) ,
	gender char(1) ,
	age tinyint unsigned ,
	idcard char(18) ,
	entrydate date 
)comment '员工表';

修改

alter table 表明 add 字段名 类型

alter table emp change nickname username varchar(30)
alter table emp drop username

修改表明:

alter table 表明 rename to 新

删除表

drop table 【if exists】 表明
truncate  table :删除后在重新创建,就是格式化

总结

DML:增删改

insert、update、delete

添加数据

insert into emp(id,workid,name,gender) valuse (1,12,'nifnd','male')

修改

update 表明 set 字段名=值, 字段名=值 where 【条件】

删除

delete from 表明 【where 条件】

delete from emp where gender='female'

# 删除所有数据
delete from emp 

总结

DQL 查询

查询多个字段

1、查询自定字段
select name,workno,age from emp;
2、查询所有字段
select * from emp;
3、查询所有员工的工作地址
select workaddress as '工作地址' from emp;
4、查询员工的上班地址(去重复)
select distinct workaddresss '工作地址' from emp;

1 查询年龄大于88
select * from emp where age=88
2 小于20的员工
select * from emp where age<=20

3 查询没有身份证号的员工
select * from emp where idcard is null

4 查询身份证号的员工
select * from emp where idcard is not null

5 不能88的员工
select * from emp where age!=88
select * from emp where age<>88
6 在15 到20之间的员工
select * from emp where between 15 and 20
select * from emp where age=> 15 and age=< 20

7 等于18 20 22 的员工
select * from emp where age=18 or age=20 or age=12
select * from emp where age in(18,20,22)

8 员工两个字的   - 一个字段  % 任意字段
select * from emp where name like '_ _'  

9 身份证最后一位是x的员工信息
select * from emp where idcard like '%X'

聚合函数

统计总数量   null 不算计数
select count(*) from emp


平均年龄
select avg(age) from emp

最大年龄
select max(age) from emp


西安地区的年龄之和
select sum(age) from emp where area='西安'

分组查询

  • having 对已经查询的数据再进行过滤
根据性别分组,统计男、nv的数量
select gender,count(*) from emp group bu gen
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值