MYSQL 笔记(一)

数据库概念

数据库:是按照数据结构进行组织、管理和储存得仓库

关系型数据库:通过关系模型组织数据得仓库

特点:易于理解,易于维护

DCL        数据库操控语言

DDL        数据定义语言

DML        数据操作语言

DQL        数据查询语言

数据库操控语句

-- 创建一个新的用户
-- CREATE USER aa@localhost IDENTIFIED BY '123456';
CREATE USER mary@localhost IDENTIFIED by '123123';

-- 为新用户进行授权
GRANT ALL ON test.* to mary@localhost;

-- 创建用户的同时进行授权
GRANT SELECT ON test.* to b@localhost IDENTIFIED BY '111111';

-- 显示某个用户的权限
sHOW GRANTS FOR mary@localhost

sHOW GRANTS FOR b@localhost

-- 回收权限
REVOKE delete on test.* from mary@localhost

数据定义语句

-- 显示所有的数据库
show DATABASES;

-- 创建一个新的数据库
CREATE DATABASE ck_001   -- Can't create database 'ck_001'; database exists
--  创建数据库并判断是否存在 如果存在不创建  不存在时则创建
CREATE DATABASE if not exists ck_001
CREATE DATABASE if not exists ck_002

-- 删除数据库 同时可以进行判断 如果存在则可以删除  如果不存在则不进行删除
DROP DATABASE if EXISTS ck_001 

-- 使用数据库
use ck_001 

-- 显示某数据库中的所有表
SHOW TABLES;

-- 创建表
CREATE TABLE if not EXISTS admin (id int auto_increment primary key not null,name 
varchar(10),age int,gender varchar(1))

create table if not exists a like admin;

-- 删除表
drop table a

-- 显示表结构
desc ad

-- 修改表结构
-- 新增字段
alter table admin RENAME ad

-- 插入字段
alter table ad add phone varchar(11)

alter table ad add email varchar(20) first

alter table ad add address varchar(20) after gender 

-- 删除字段
alter table ad drop email

-- 改字段类型
alter table ad modify phone int             -- modify 只能改类型
alter table ad change phone tel varchar(11) -- change 改名,改类型

 数据操作语言

-- 添加
insert into admin (name,age,gender) values ('小明',12,'男')
insert into admin values (default,'小明',12,'男','长春','123')
insert into admin values (null,'小明',12,'男','长春','123')
insert into admin (name,age) values ('小红',13)
-- 修改
update admin set gender=null where id=8
update admin set name='大名',age=23,gender='男' where id=2
-- 删除
delete from admin where id=3;

数据查询语言

-- 查询表中所有数据
SELECT id as 序号,name as 姓名,age 年龄,gender 性别,address 地址,tel 电话 FROM admin

SELECT id as 序号,name as 姓名,age 年龄,gender 性别,address 地址,tel 电话 FROM admin WHERE name='小明'

SELECT * FROM admin WHERE name='小明'

SELECT * FROM admin WHERE name='小明' and gender='女'

SELECT * FROM admin WHERE address='上海' or address='吉林'

SELECT * FROM admin WHERE id=6

SELECT * FROM admin WHERE age>=15 and age <=30

SELECT * FROM admin WHERE age between 15 and 30

SELECT * FROM admin WHERE age<=20 or age >=30

SELECT * FROM admin WHERE age!=24

SELECT * FROM admin WHERE gender is not null

SELECT * FROM admin WHERE gender is null

SELECT * FROM admin WHERE age in (15,30)
-- 注意括号表示集合,括号内的数据是集合中的元素

-- 升序排列
SELECT * from admin order by age asc
-- 降序排列
SELECT * from admin order by age desc

SELECT * from admin order by age desc limit 3

SELECT * from admin order by age desc

SELECT * from admin limit 0,3
SELECT * from admin limit 3,3 
-- 参数1:表示起始数据的下标  参数2:表示每次显示的个数
select count(gender) from admin
select count(id) from admin
select count(*) from admin
select sum(age) from admin
select max(age) from admin
select min(age) from admin
select avg(age) from admin


select gender,count(*) from admin group by gender
-- where 关键字是对原始表起作用
-- having 是对结果表  虚拟表起作用  二次筛选
select gender,avg(age) from admin group by gender
having avg(age) >= 20

select * from admin where address like '%朝阳区%'

select * from admin where name like '张%'
-- %表示任意字符
select * from admin where name like '%张%'
-- _表示单个字符
select * from admin where name like '张__'

select distinct gender from admin
-- 联合查询
select * from admin 
UNION all
select * from teacher 
-- 左连接
select * from admin left join teacher
on admin.id = teacher.id

-- 右连接
select * from admin right join teacher
on admin.id = teacher.id

-- 内连接
select * from admin inner join teacher
on admin.id = teacher.id

select * from player,team where 
player.tid = team.id and team.name = '中国队'
-- 子查询
select * from player where tid = (select id from team where name = '中国队')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Programmer-J

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值