【MySQL】CRUD,常见函数及union&union

目录

CRUD

 查询

新增数据

修改数据

删除数据

常见函数

字符函数

 数字函数

 日期函数

流程控制函数

 聚合函数

 union&union all

概念

 应用场景

 语法

思维导图


CRUD

条件查询执行顺序

1.where(条件)

2.group by(分组)

3.having(筛选)

4.order by(排序)

5.limit(记录数)

 查询

查询book表的所有数据
select * from book 
 
查询 book id为1的数据
select * from book where id =1
 
查询id大于6的数据
select * from book  id>6 

新增数据

新增一条数据
insert into book values(1,1,1,1)
 
新增多条数据
insert into book values
(1,1,1,1),
(1,1,1,1)
 
选择性新增数据 
insert into book set id=1,name=zhangsan,sex='男'
 

修改数据

删除id为1的数据

update book set name=lisi where id=1

删除数据

删除id为1的数据

delete from book where id=1

常见函数

字符函数

  1. strlen() - 返回字符串的长度
  2. strcpy() - 将一个字符串复制到另一个字符串
  3. strcat() - 将一个字符串连接到另一个字符串的末尾
  4. strcmp() - 比较两个字符串是否相同
  5. strchr() - 在字符串中查找指定字符的位置
  6. strstr() - 在字符串中查找指定子串的位置
  7. toupper() - 将字符串中的小写字母转换为大写字母
  8. tolower() - 将字符串中的大写字母转换为小写字母
  9. atoi() - 将字符串转换为整数
  10. atof() - 将字符串转换为浮点数
转小写LOWER('SQL Course')sql course
转大写UPPER('SQL Course')SQL COURSE
拼接CONCAT('Hello','World')HelloWorld
截取SUBSTR('HelloWorld',1,5)Hello
长度LENGTH('HelloWorld')10
字符出现索引值INSTR('HellowWorld')6
字符截取后半段TRIM('H' FROM 'HelloWorld')elloWorld
字符替换REPLACE('abcd','b','m')amcd

 数字函数

  1. abs() - 返回一个整数的绝对值
  2. pow() - 返回一个数的指定次幂
  3. sqrt() - 返回一个数的平方根
  4. round() - 对一个浮点数进行四舍五入
  5. ceil() - 对一个浮点数向上取整
  6. floor() - 对一个浮点数向下取整
  7. fmod() - 返回两个数的浮点数取模运算结果
  8. rand() - 生成一个随机数
  9. srand() - 初始化随机数种子
  10. log() - 返回一个数的自然对数
四舍五入ROUND(45.926,2)45.93
截断TRUNC(45.926,2)45.92
求余MOD(1600,300)100

 日期函数

  1. time() - 返回当前时间的秒数数值
  2. difftime() - 计算两个时间之间的差值(秒数)
  3. mktime() - 将日期和时间转换为秒数数值
  4. localtime() - 将秒数数值转换为本地时间的结构体
  5. strftime() - 格式化输出日期和时间
  6. gmtime() - 将秒数数值转换为格林尼治时间的结构体
  7. asctime() - 将时间结构体转换为字符串表示的时间
  8. ctime() - 将秒数数值转换为字符串表示的时间
获取当前日期now()
将日期格式的字符转换成指定格式的日期STR_TO_DATE('9-13-1999','%m-%d-%Y')1999-09-13
将日期转换成字符DATE_FORMAT('2018/6/6','%Y年%m月%d日')2018年06月06日

流程控制函数

语法:

CASE expr WJEN comparison_expr1 THEN return_expr1

[WHEN comparison_expr2 THEN retutn_expr2

WHEN comparison_expr THEN return_exprm

ELSE else_expr]

END

案列:查询同时存在“01”课程和“02”课程的情况

SELECT t3.*,

(CASE WHEN t1.cid = '01' THEN t1.score END)语文,

(CASE WHEN t2.cid = '02' THEN t2.score END)数学

FROM

(SELECT * FROM t_mysql_score sc WHERE sc.cid = '01')t1,

(SELECT * FROM t_mysql_score sc WHERE sc.cid = '02')t2,

t_mysql_student t3

WHERE

t1.sid = t2.sid

AND t1.sid = t3.sid

 聚合函数

1.sum(求和)

2.avg(平均值)

3.max(最大值)

4.min(最小值)

5.count(计算个数)

 union&union all

概念

UNION:用于合并两个或者多个SELECT语句的结果集,并去除重复的行

UNION ALL:用于合并两个或者多个SELECT语句的结果集,包括重复的行

 应用场景

UNION:当需要合并多个查询结果,并且不希望出现重复时,可以使用UNION操作符

例:合并两个表的数据,不出现重复的记录。

UNION ALL:
当需要合并多个查询的结果,但不需要去除重复的行时,可以使用Union All操作符。
例:合并两个表的数据,出现重复的记录

 语法

UNION

SELECT column_name(s) FROM table1 
UNION 
SELECT column_name(s) FROM table2;

使用UNION时,默认会删除结果集中的重复行。这意味着如果两个SELECT语句产生的结果中有相同的行,那么这些行在最终的结果集中只会出现一次

UNION ALL

SELECT column_name(s) FROM table1  
UNION ALL  
SELECT column_name(s) FROM table2;

使用UNION ALL时,不会删除结果集中的重复行。这意味着如果两个SELECT语句产生的结果中有相同的行,那么这些行在最终的结果集中会全部出现。 

思维导图

 

  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值