目录
一,新增
二,查询
2.1 全列查询
2.2 指定列查询
2.3 查询字段为表达式
2.4 别名 - as
2.5 去重 - distinct
2.6 排序 - order by
2.7 条件查询 - where
2.8 分页查询 - limit
三,修改 - update
四,删除 - delete
一,新增
insert into 表名 [(列名,列名....)] values (value_list)...
[]中的内容可以不加,如果加,那么 values () 中的内容要与 (列名,列名...)相互对应,比如:
如果列没有被赋值,那么它们默认为null,拿上面的举例,name 那列中 id = 3,4的,就为null.
二,查询
2.1 全列查询
select * from 表名 ;
2.2 指定列查询
select 列名,列名... from 表名 ;
2.3 查询字段为表达式
2.4 别名 - as
select 列名 as 别名... from 表名 ;
2.5 去重 - distinct
select distinct 列名... from 表名 ;
distinct 后面的列上的数据完全一致时,该数据将会被去重。
2.6 排序 - order by
select ..... order by 列名 asc(升序)/desc(降序),列名 asc/desc....
- 没有 order by 字句的查询,返回的顺序是不确定的。
- null 数据参与排序,视为比任何值都要小。
- 如果 order by 后面没有写 asc/desc ,那么默认为 asc
- 如果 order by 后面有多个比较顺序,那么从左往右比较,如果该列的数据相同,就按照后一个列名进行比较。
2.7 条件查询 - where
运算符:
运算符 | 说明 |
> ,<,>=,<= | |
= | 相当于Java中的 ==,但是但遇到 null = null 时,答案还是 null(false) |
<=> | 相当于Java中的 ==,遇到 null <=> null ,答案是 true |
!=,<> | |
between A and B | 范围匹配,[ A,B ] |
in (...) | 如果是()中的任意一个, 返回 true |
is null | 是 null |
is not null | 不是 null |
like | 模糊匹配,%表示任意多个(包括0个)任意字符;_表示任意一个字符 |
and | 相当于Java中的 && |
or | 相当于Java中的 || |
not | 相当于Java中的 ! |
- where 条件可以使用表达式,但是不能使用别名。
- and 的优先级高于 or
这里面就讲一讲like,其他的一看就懂了:
注:%可以表示0/多个字符,但是_只能表示1个字符!!!
2.8 分页查询 - limit
select ... limit a offset b ;
a表示查找几个,b表示从哪里开始,相当于Java中的数组,b表示下标,基本上搭配上面讲的几种查询方法使用。
三,修改 - update
update 表名 set 列名 = ?【where...】【limit...】【order by...】
用法:当满足...条件,就将 该列改成 ....
四,删除 - delete
delete from 表名 【where...】【limit...】【order by...】