MySQL基础

MySQL基础

  • 数据类型
  • SQL语句:
    • 对数据库操作
    • 对表的操作
  • 对MySQL表的增删改查
    • 新增(Create)
      • 单行数据+全列插入
      • 多行数据+指定列插入
    • 查询(Retrieve)
      • 指定列查询
      • 全列查询
      • 查询字段为表达式
      • 别名
      • 去重: DISTINCT
      • 排序 ORDER BY
      • 条件查询:WHERE
      • 分页:LIMIT
    • 修改(Update)
    • 删除(Delete)

数据类型

数据类型非常的多,这里就只列出我们常用的一些类型吧:
1、数值类型:(INT 整形 DECIMAL 非整形(浮点型))
2、字符串:
VARCHAR(45) 变长的字符串 最多保存45个字(字:不区分中英文
CHAR(45) 定长的字符串 (固定容量45)
VARCHAR是有上线的,超过后TEXT
3、二进制类
BLOB (Binary Large OBject)

4、时间和日期
DATE 年月日:(2021-04-01)
TIME 时分秒:(12:12:12)
DATETIME 年月日+时分秒
TIMESTAMP 时间戳

SQL语句:

SQL语句对大小写不敏感,所以大写和小写代表的是一样的,所以建库建表的时候,要注意不要重名。

在MySQL中,–代表注释

注意建库的时候,需要选择utf8mb4,里面包含了中文字符

另外在书写SQL语句的时候,一些条件是可以省略,根据情况决定是否省略。

对数据库操作

--显示
show databases;
--创建
create databases xxx;
--使用(变成默认库)
use xxx;
--删除
drop databases xxx;

对表的操作

--查看
show;
--创建
--可以使用comment增加字段说明
create table 表名(
	字段1 类型1,
	字段2 类型2,
	...
);
--删除
drop table 表名;

对MySQL表的增删改查

CRUD:
CRUD即: 增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)的首字母缩写

新增(Create)

单行数据+全列插入

举例:在student表中,插入两个个记录:id,名字,成绩

INSERT INTO student 
	VALUES (1,'张三',78);
INSERT INTO student 
	VALUES (2,'李四',46);

多行数据+指定列插入

举例:插入两个记录,id,名字,成绩

INSERT INTO student (id,name,ret) VALUES
	(3,'王五',44),
	(4,'王企',99);

查询(Retrieve)

指定列查询

在表中查出id,name;

SELECT id,name FROM student;

全列查询

SELECT * FROM student;

查询字段为表达式

表达式不包含字段的时候

select id,name,10 from student;

表达式包含一个字段

select id,name,ret+10 from student;

表达式包含多个字段

select id,name,chinese+math from student;

别名

为查询结果指定别名:

select id,name,chinese + math +english 总分 from student;

去重: DISTINCT

对关键字去重:
例如:

select DISTINCT math from student;

排序 ORDER BY

1、没有order by的查询,顺序是未定义的
2、null数据排序,视为比任何值都小,升序在最上面,降序在最下面,
3、ASC为升序,DESC为降序,默认升序,
4、多个字段排序,排序优先级随书写顺序

条件查询:WHERE

比较运算符:
MySQL基础_第1张图片
逻辑运算符:
MySQL基础_第2张图片
注意:AND 的优先级 高于 OR 同时使用的时候,注意优先级,可以使用小括号包裹。

select id,name from student WHERE 条件;

分页:LIMIT

从0开始,筛选n条结果:

select id,name from student where 条件 order by LIMIT n;

从s开始,筛选n条结果:

select id,name from student where 条件 order by LIMIT s , n;

从s开始,筛选n条结果:

select id,name from student where 条件 order by LIMIT s OFFSET n;

修改(Update)

举例:将id=1的同学,ret改为100;

update student set ret =100 where id = 1;

将所有人成绩加10

update student set ret =ret+10 ;

删除(Delete)

举例:

delete from student where name = '张三';

你可能感兴趣的:(MySQL基础,mysql,数据库,sql,SQL语句)