MySQL的必备知识大全

MySQL服务启动

使用管理员打开cmd

  • net start mysql :启动mysql的服务器
  • net stop mysql:关闭mysql服务器

MySQL登录

mysql -uroot -p密码


MySQL退出

  1. exit
  2. quit

SQL分类

  1. DDL:操作数据库和表
  2. DML:增删改表中数据
  3. DQL:查询数据库的数据
  4. DCL管理用户,授权

Mysql的命令

1.创建数据库,判断是否存在,并制定字符集为gbk(不设置时默认为utf8)

create database if not exists 数据库名称 character set gbk;


2.查询数据库

  • 查询所有数据库的名称
    show databases;
  • 查询某个数据库的字符集:查询数据库的创建语句
    show create database 数据库的名称;
  • 修改数据库的字符集
    alter database 数据库的名称 character set 字符集的名称;
  • 删除数据库
    drop database if exists 数据库的名称 chararcter set 字符集名称;
  • 使用数据库
    ** 使用当前数据库
    select database();
          ~~~~~       * 使用数据库
       ~~   use 数据库名称;

DDL和DML的代码展示

请点击将为你跳转

查询代码展示(DQL)

use db1;
-- 创建表
create table student (
id int , -- 编号
name varchar(20), -- 姓名
sex varchar(5),-- 性别
address varchar(100), -- 地址
math int , -- 数学
English int  -- 英语
);
-- 插入数据
insert into student (id,name,sex,address,math,English)values
(1,'马云','男','杭州',60,120),
(2,'马化腾','男','深圳',90,100),
(3,'李彦宏','男','北京',120,120),
(4,'王健林','男','大连',97,34),
(5,'马斯克','男','纽约',78,92),
(6,'董明珠','女','珠海',99,96);
insert into student (id,name,sex,address,math,English)values(7,'于赛坤','男','鹿邑',null,90);
-- 基础查询
-- 查询所有记录
select * from student; 
-- 查询去除重复的记录
select distinct English from student;
-- 计算math和English分数和 特殊情况如果有一个值为null结果都是null
select name ,math,English,math+English from student;
-- 起别名,AS可以省略
select name,math,English,ifnull(English,0)+ifnull(math,0) AS 总和 from student;
-- 基础查询


-- 条件查询
-- where 子句后跟条件
-- > < >=  <= = 
-- between ...and 
-- IN (集合)
-- IS NULL
-- AND 或&&
-- or或||
-- not或!
-- like 占位符:-代表单个任意字符  %代表多个任意字符

-- 查询数学成绩大于90的人
select * from student where math>90;
-- 查询首个字为‘马’的记录
select * from student where name like '马%';
-- 查询三个字名字的记录
select * from student where name like '___';
-- 查询名字中有‘马’的记录
select * from student where name like '%马%';
-- 条件查询


--  排序查询
-- 根据数学成绩排序
-- ASC 升序默认
-- DESC 降序
select * from student order by ifnull(math,0 ) ASC;
-- 数学成绩相同在按照英语成绩排序
select * from student order by math DESC ,English ASC;
-- 排序查询



-- 聚合函数 :将一列数据作为一个整体,进行纵向计算
-- count max min sum avg 

-- 统计人数 如果记录值为null不统计
select count(id) from student;
select max(math) from student;

-- 分组查询
select sex ,avg(English) from student GROUP BY sex;
select sex ,avg (English) from student where math > 90 Group by  sex;
-- where 在分组之前进行限定,如果不满足条件不参与分组
-- having在分组之后限定
-- where后不可以跟聚合函数,having可以
---分页查询
limIt 开始的索引  查询的页数
select * from student limit 0,3;

未完持续更新~~~~~~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值