sql常用的增删改查基础操作及函数扩展

基础的增删改查操作

1.增操作

1.insert into 表名 set name='stu1',age=19;

2.insert into表名 (name,age) VALUES('stu2',20) ;

3.insert into表名 (name,age) VALUES('stu3',20),('stu4',21),('stu5'.22);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8s0P453V-1571286883075)(media/4346a46820f50aea03e29fd8fd97a51b.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jl9comLv-1571286883076)(media/3026ee6ac5ac885b5e677aa0052e1e14.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LCKNAdb7-1571286883077)(media/1713975fd7e1b610dd39c029c55dec0b.png)]

2.删除操作

1.delete from 表名

全部删除

2.delete from 表名 where name=" "

删除选中的一行

3.delete from 表名 order by xxx;

Order by代表删除数据的顺序,通常和limit 配合使用

4.delete from 表名 limit 1;

Limit子句代表被删除数据的行数限制

3.修改操作

update t_user set name="张三" where name='wangzhen' (修改)

4.查询操作(含sql自带函数)

1.select \* from 表名 where 列名=' ' ;

在这里插入图片描述
2.select * from 表名 where 列名=’ ';
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MG6ATrgL-1571286883077)(media/30e66d59f6fbb6451be98cf5107218c2.png)]

函数拓展

一、数学函数

1.ROUND四舍五入

select round(1.23);

2.ROUND指定保留位数的四舍五入

select round(1.2345,3);

3.CEIL向上取整

select ceil(1.23);

4.FLOOR向下取整

select floor(9.99);

5.TRUNCATE截断

select truncate(1.4499,2);

6.MOD取模

select mod(-10,-3);

7.ORDER–BY DESC倒序排序

select \* from student order by age desc;

8.ORDER–BY ASC正序排列

select \*from stu order by age asc;

二、聚合函数

1.AVG返回平均值

select avg(age) from stu;

2.COUNT返回指定列中非NULL值的数量

select count(age) from stu;

3.COUNT返回表的行数(包含有NULL值的列)

select count(\*) from stu;

4.MAX返回最大值

select max(age) from stu;

5.MIN返回最小值

select min(age) from stu;

6.SUM求和

select sum(age) from stu;

三、流程控制语句(if、case)

1.IF 语句

select if(10\>5,'大于','不大于');

2.CASE-----WHEN

类似switch—case

select age,(

case id //列名

when 5 then '5'

when 6 then '6'

else 'other'

END

)as isyoung

from stu;

四、字符、字符串相关函数

1.UPPER小写字母转为大写字母

select upper('sp');

2.LOWER大写字母转小写字母

select lower('SP');

3.ASCII返回字符ASCII码

select acsii('A');

4.SUBSTRING截取字符串

select substring('sphxhxx',1,3);

5.LEFT / RIGHT从左侧/右侧截取字符串

select left(‘ilove’,3);

select right(‘study’,2);

典型实例

1.insert count(\*) AS num from student; (统计行数,AS 以什么命名)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZaJu6jpn-1571286883078)(media/8f25e34a27084c5da8ada9aac8b44202.jpg)]

2.select sum(列名) from 表名;

select sum(age) from student; (查找中age 最大的数据)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hWMDwL4q-1571286883079)(media/f52bf58d4aee75a3dc799b5dd062d3d0.jpg)]

3.select avg(列名) from 表名;

select avg(age) from student; (统计表中age的平均值)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uIOQ70Yh-1571286883079)(media/8f35e8f4c5cb98ca9d0f002bc559819d.jpg)]

4.select * from 表名 order by 列名 asc;

select \* from student order by age asc;(asc 升序 默认顺序 可以不写)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mSgjTuEr-1571286883079)(media/93f530e01a5b11b9ef447c577629db18.jpg)]

5.select * from 表名 order by 列名 desc;

select \* from student order by age desc;(desc 降序)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dzs6Keca-1571286883079)(media/e56d75bb6ef83a403cdfded53e71a8a1.jpg)]

补充:

关于order by

order by 语句用于根据指定的列对结果集进行排序,默认按照升序排列。

1.  select 字段名 from 表名 where 条件 order by 字段名1 asc/desc, 字段名2
asc(升序,默认)/desc(降序),.......

2.  select 字段名 from 表名 where 条件 order by 字段序号 asc/desc, 字段序号
asc/desc,....... (字段序号从1开始)

最后要注意order by的在使用时,写在前面的字段会先执行,例如:

SELECT sno,sname,sex,brithday,dno FROM student ORDER BY 4,5DESC;

这句对第四列(日期列)优先升序排列(默认),只有该列有相同值(1983-10-04)时,第5列才会按照语句进行降序排列。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X0REOj66-1571286883080)(media/c7dfc265d7968e51ccf75180b6877165.png)]

SELECT sno,sname,sex,brithday,dno FROM student ORDER BY 5,4 DESC;

第5列升序

[外链图片转存中...(img-C2HzNuyF-1571286883080)]

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值