1、插入数据
格式一:
insert into 表名(列名1,列名2,列名3...) values(值1,值2,值3...);
格式二:
insert into 表名 values(值1,值2,值3....);
格式三:(仅限于Mysql数据库)
insert into 表名 values(值1,值2,值3...),(值1,值2,值3...),....;
#例:-- 向学生表中插入记录
insert into 学生表(学号,姓名,年龄,性别) values('102','李四',20,'男');
insert into 学生表 values('103','王五',20,'女');
insert into 学生表 values('104','赵六',21,'男'),('105','庄周',21,'女'),('106','蔡徐坤',22,'男');
2、 删除数据
格式一:删除整个表的数据
delete from 表名;
格式二:有条件的删除
delete from 表名 where 条件;多条件用and 或者or连接
delete from 表名 where 条件1 or 条件2 or 条件3...;
3、修改表中数据
update
格式一:针对一个列修改
update 表名 set 列名=值;例:update 学生表 set 年龄=20;
格式二:一次性修改多个列的值
update 表名 set 列名1=值,列名2=值,列名3=值;
#例如:
update 学生表 set 年龄=20,性别='男;
格式三:有条件的更新
update 学生表 set 列名=值 where 条件;
4、查询
4.1.格式:
select 列名 from 表名 ;
select * from 表名;查询所有
select 列名1 '别名1' ,列名2 '别名2',... from 表名;
4.2.格式二:
select 列名1 as ‘别名1’,列名2 as ‘别名2’,… from 表名;
条件查询:
select 列名 from 表名 where 条件;
4.3.比较运算符= < > <= >= <> !=
范围查询[开始值,结束值]
select 列名 from 表名 where between 开始值 and 结束值;
4.4.不在某个范围之内的查询工作
select 列名 from 表名 where 列名 not between 开始值 and 结束值;
4.5.列表搜索条件 in
select 列名 from 表名 where 列名 in(值1,值2,值3...);
4.6.不要列表中的内容 not in
select 列名 from 表名 where 列名 not in(值1,值2,值3....);
4.7.模糊查询 like
格式:select 列名 from 表名 where 列名 like '%名';
指定模式:通配符 % 代表是零个或者多个字符 _代表的是一个字符
王%: 王五 王五六 王五六七 王
王_ 王五
not like 排除指定模式的内容
格式:
select 列名 from 表名 where 列名 not like '指定模式';
4.8.空值得查询
判断为空:is null
select 列名 from 表名 where 列名 is null;
判断不为空 is not null
select 列名 from 表名 where 列名 is not null;
5、聚合函数
sum(列名) 求和
avg(列名) 求平均值
max(列名) 求最大值
min(列名) 求最小值
count(*) 统计元组的个数
count(列名) 统计某个列的个数
注意:除了count(*)之外,其它函数做操作,均忽略空值
格式:
select 聚合函数 from 表名;
5.1.行数限定:limit 从多少行开始查询
select 列名 from 表名 limit(指定位置下标,行数);
5.2.分组查询:group by
select 聚合函数(列名) from 表名 group by 列名;
5.3.分组的条件限制:having
select 聚合函数(列名) from 表名 group by 列名 hanving 条键(聚合函数作为条件);
注意事项:1.having的使用必须有group by 2.having后面可以写聚合函数,但是where后面不可以直接写聚合函数。
5.4.排序:order by 对结果进行排序 降序desc,升序asc
#降序
select 列名 from 表名 order by 列名 desc;
#两个条件及多个条件排序序:
select 列名 order by 列名 desc,列名 asc;
5.5.
char_length:统计字符串中字符的长度(有多少个字符)
字符串的截取 mid(字符串,开始截取的位置,截取的长度)
格式:round(数据,保留的小数位) round(数据) 保留的整数位
获取最小值 least(值1,值2,值3…)
获取最大值 greatest(值1,值2,值3…)
对45.8793 保留3位小数
5.6.日期时间
now() 获取当前日期时间
current_date() 获取日期
current_time() 获取时间
to_days() 给定时间节点,看转换出的总天数
dayofyear() 已过的天数
week() 获取的是周数