mysql 学习笔记

146 阅读3分钟

1.基本概念

  • 数据库(database) - 保存有组织的数据的容器(通常是一个文件或一组文件)。
  • 数据表(table) - 某种特定类型数据的结构化清单。
  • 模式(schema) - 关于数据库和表的布局及特性的信息。模式定义了数据在表中如何存储,包含存储什么样的数据,数据如何分解,各部分信息如何命名等信息。数据库和表都有模式。
  • 列(column) - 表中的一个字段。所有表都是由一个或多个列组成的。
  • 行(row) - 表中的一个记录。
  • 主键(primary key) - 一列(或一组列),其值能够唯一标识表中每一行。

2.增删改查(CRUD: create read update delete)

image.png

1.插入

插入一条完整的数据,需要每个表头对应一个数据,包括id

INSERT INTO student VALUES (100, 'meimei', '19', 1);

插入行的一部分内容

INSERT INTO student(name,age,sex) VALUES ('meimei', '19', 1);

插入在别的表中查询出来的数据

INSERT INTO student(name) SELECT name FROM user; // user表两个字段 id name

2.更新

UPDATE student SET id=11, NAME="梅梅", age=22 WHERE id = 100;

3.删除

  • DELETE 语句用于删除表中的记录。
  • TRUNCATE TABLE 可以清空表,也就是删除所有行。

删除表中指定数据

DELETE FROM student WHERE id=105;

清空表中的数据

TRUNCATE TABLE USER;

4.查询数据

mysql查询语法

SELECT column1, column2, ...
FROM table_name
[WHERE condition]
[ORDER BY column_name [ASC | DESC]]
[LIMIT number];

SELECT语句用于从数据库中查询数据。
`column1`, `column2`, ... 是你想要选择的列的名称,如果使用 `*` 表示选择所有列。
`table_name` 是你要从中查询数据的表的名称。
`WHERE condition` 是一个可选的子句,用于指定过滤条件,只返回符合条件的行。
`ORDER BY column_name [ASC | DESC]` 是一个可选的子句,用于指定结果集的排序顺序,默认是升序(ASC)。
`LIMIT number` 是一个可选的子句,用于限制返回的行数。如果有两个参数,第一个参数为起始行,从0开始;第二个参数为返回的总行数。

查询单列

SELECT name FROM student;

查询多列

SELECT id,NAME,age FROM student;

查询所有列

SELECT * FROM student;

查询不同的值(某个字段去重)

SELECT DISTINCT name FROM student;

限制返回行数(从0行开始,返回5条数据)

SELECT * FROM student LIMIT 5;

SELECT * FROM student LIMIT 0,5;

4.1 子查询

4.1.1 WHERE

WHERE 子句用于过滤记录,即缩小访问数据的范围。 WHERE 后跟一个返回true或false的条件。 WHERE 可以与SELECT,UPDATE和DELETE一起使用。

可以在WHERE子句中使用的操作符。 image.png

4.1.2 IN 和 BETWEEN

IN 操作符在 `WHERE` 子句中使用,作用是在指定的几个特定值中任选一个值。(发现返回n-1个)
SELECT * FROM student WHERE id IN (100, 102, 104,103,101);
 
BETWEEN 操作符在 `WHERE` 子句中使用,作用是选取介于某个范围内的值。
SELECT * FROM student WHERE id BETWEEN 100 AND 104;

参考链接:mp.weixin.qq.com/s/fuAHzSfuR…

mysql安装参考:blog.csdn.net/qwe13600as/…