MySQL表的增删改查(1)


CRUD
注释:在SQL中可以使用“–空格+描述”来表示注释说明
CRUD 即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词首字母缩写。

MySql执行顺序:

1.from阶段
2.where阶段
3.group by阶段
4.having阶段
5.select阶段
6.order by阶段
7.limit阶段

1.数据添加(Create)

语法:

insert into 表名(指定那些列) values (内容);

1.1单列数据+全列插入

在这里插入图片描述
必须要和表创建时候的列顺序保持一致,不一样的时候会报错。
在这里插入图片描述
多行全列插入:
在这里插入图片描述

1.2多行数据+指定列插入

例:姬如雪没有设置密码
在这里插入图片描述
添加的时候指定列的顺序决定添加数据的顺序。

2.查询

2.1全列查询

select * from 表名;

– 通常情况下不建议使用 * 进行全列查询
– 1. 查询的列越多,意味着需要传输的数据量越大;
– 2. 可能会影响到索引的使用。(索引待后面课程讲解)
在这里插入图片描述

2.2指定列查询

select 列名[列名] from 表名;

在这里插入图片描述
在这里插入图片描述
这里面的10是一个虚拟出来的列。

2.3查询字段为表达式

不会对表的原始数据造成影响。
表达式查询:

select 列名+表达式 from 表名;

表达式包含一个字段:
在这里插入图片描述
表达式包含多个字段:
在这里插入图片描述

2.4别名(as)

为查询结果中的列指定别名,表示返回的结果集中,以别名作为该列的名称,语法:

select 列名 [as] 别名 from 表名;

在这里插入图片描述

2.5去重(distinct)

select distinct 列名 from score;

使用distinct关键字对某列数据进行去重:
在这里插入图片描述

select distinct 列名1,列名2 from score;

这种情况下需要列名1和列名2都重复才会去重;
distinct可以使用多个字段联合去重,但去重规则为:所有的联合字段全部相同才会去重,否则不会去重。

2.6 排序 (order by)

NULL在排序的时候是最小级别。

select * from 表名 order by 列名[,列名] asc/desc 

– ASC 为升序(从小到大)
– DESC 为降序(从大到小)
– 默认为 ASC
在这里插入图片描述
在这里插入图片描述

  1. 没有 ORDER BY 子句的查询,返回的顺序是未定义的,永远不要依赖这个顺序
  2. NULL 数据排序,视为比任何值都小,升序出现在最上面,降序出现在最下面
  3. 使用表达式及别名排序
    在这里插入图片描述
    order可以使用别名进行排序:
    在这里插入图片描述

多列排序

order by1,列2 asc/desc

说明;只有列1相同的时候,才会使用列2排序。

2.7条件查询(超重要!!!!)

不能使用别名

select *  from 表名 where 查询条件;

比较运算符:
在这里插入图片描述
逻辑运算符:
在这里插入图片描述
注:

  1. WHERE条件可以使用表达式,但不能使用别名。
  2. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值