MySQL的知识点(3)

接上文:MySQL的知识点(2)


该文章主要包含创建表,添加,修改,删除等知识点,如有遗漏,请评论区告诉博主,谢谢。


注意:输入法请切换成英文输入法

1、创建表的语句

关键词:create table 创建表,primary key 主键,auto_increment 自增长,COMMENT 备注

-- 创建数据库
create database test_user;
--  选择创建的数据库
use test_user;
-- 创建一张表
create table user(
	id int primary key auto_increment NOT NULL COMMENT '非空自增长主键',
	name varchar(50) NOT NULL COMMENT '姓名',
	age int COMMENT '年龄'
);
-- 显示user表的信息
DESC user;
/* 数据表信息显示如下
+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| id    | int(11)     | NO   | PRI | NULL    | auto_increment |
| name  | varchar(50) | NO   |     | NULL    |                |
| age   | int(11)     | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+
*/

2、插入语句

关键词:INSERT into 插入 ,user(name,age) 表对应的列名values(...,...) 列值

insert into user (name,age) values('张三',20);
insert into user(name) values('李四');
INSERT INTO user(id,name,age) values(9,'王五',22);
-- 查看数据表的值
SELECT * FROM user;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  1 | 张三   |   20 |
|  2 | 李四   | NULL |
|  9 | 王五   |   22 |
+----+--------+------+
*/
-- 批量添加语句
INSERT INTO user(name,age) values('王武',21),('李思',21),('老六',24);
-- 再次查询数据
SELECT * FROM user;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  1 | 张三   |   20 |
|  2 | 李四   | NULL |
|  9 | 王五   |   22 |
| 10 | 王武   |   21 |
| 11 | 李思   |   21 |
| 12 | 老六   |   24 |
+----+--------+------+
*/

3、修改语句

关键词:UPDATE 修改更新,SET 修改赋值,WHERE 指定条件
如果不加WHERE添加限定更新条件,将会更改所有行的数据

-- 更新指定数据的年龄
UPDATE user SET age=21 WHERE id=2;
-- 查看指定数据
SELECT * FROM user WHERE id=2;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  2 | 李四   |   21 |
+----+--------+------+
*/
UPDATE user SET name='czx',age=22 WHERE id = 2;
SELECT * FROM user WHERE id=2;
/*
+----+------+------+
| id | name | age  |
+----+------+------+
|  2 | czx  |   22 |
+----+------+------+
*/
-- 更新所有数据的年龄
UPDATE user SET age=18;
SELECT * FROM user;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  1 | 张三   |   18 |
|  2 | czx    |   18 |
|  9 | 王五   |   18 |
| 10 | 王武   |   18 |
| 11 | 李思   |   18 |
| 12 | 老六   |   18 |
+----+--------+------+
*/

4、删除语句

关键词:DELETE 删除

4.1 基础删除

添加WHERE条件进行指定删除

DELETE FROM user WHERE user.name='czx';
SELECT * FROM user;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  1 | 张三   |   18 |
|  9 | 王五   |   18 |
| 10 | 王武   |   18 |
| 11 | 李思   |   18 |
| 12 | 老六   |   18 |
+----+--------+------+
*/

4.2 按序删除

关键词:ORDER BY [[列名]] 在某列名下的排序,LIMIT 限定范围
按序删除经常与基础删除结合在一起删除,这样子在执行基础删除的时候就不会再去扫描全表,如果加上LIMIT 数字,执行完就return了,删除效率变高了。

SELECT * FROM user ORDER BY NAME;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  1 | 张三   |   18 |
| 11 | 李思   |   18 |
|  9 | 王五   |   18 |
| 10 | 王武   |   18 |
| 12 | 老六   |   18 |
+----+--------+------+
*/
-- 删除前两个数据,此处的LIMIT仅支持删除前几条数据
DELETE FROM user ORDER BY NAME LIMIT 2;
/*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
|  9 | 王五   |   18 |
| 10 | 王武   |   18 |
| 12 | 老六   |   18 |
+----+--------+------+
*/
-- 添加数据
INSERT INTO user(name,age) values('王武',21),('李思',21),('老六',24);

-- 基础删除加按序删除
DELETE FROM user WHERE user.age=18 ORDER BY age LIMIT 3;
SELECT * from user;
 /*
+----+--------+------+
| id | name   | age  |
+----+--------+------+
| 13 | 王武   |   21 |
| 14 | 李思   |   21 |
| 15 | 老六   |   24 |
+----+--------+------+
*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

czxboys

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

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

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

打赏作者

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

抵扣说明:

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

余额充值