MySQL基础(一)——常用函数

本文介绍了MySQL中的常用函数,包括字符函数如LENGTH、CONCAT、UPPER、LOWER等,数学函数如ROUND、CEIL、FLOOR、TRUNCATE,日期函数如NOW、CURDATE、CURTIME等,统计函数如SUM、AVG、MIN、MAX、COUNT,以及流程控制函数IF和CASE。通过实例展示了如何在SQL查询中运用这些函数,帮助读者更好地理解和运用MySQL。
摘要由CSDN通过智能技术生成

MySQL基础(一)——常用函数

视频学习来源:MySQL_基础+高级篇- 数据库 -sql -mysql教程_mysql视频_mysql入门_尚硅谷;

作者:木子六日;

MySQL版本:5.7.33;

字符函数

USE myemployees;

# 字符函数
# length  返回字符的字节长度
SELECT
	LENGTH('ljj');

SELECT
	LENGTH('李晶晶');

# concat 拼接字符
SELECT
	concat(last_name, ' ', first_name) AS full_name
FROM
	employees;

# upper、lower
SELECT
	upper('Ljj');

SELECT
	lower('Ljj');

# substr、substring  截取字符串(注意sql中的位置从1开始,不是0)
SELECT
	substr('hello world', 7);

# 结果是world
SELECT
	SUBSTR('hello world', 1, 5);

# 结果是hello,这里的5代表截取长度
# instr 返回子串第一次出现的位置,没出现返回0
SELECT
	instr(
		'ljj你可真是个废物',
		'废物'
	) AS result;

# trim  去首尾空格
SELECT
	trim('           ljj          ') AS result;

# trim也可以去掉指定字符,使用如下
SELECT
	trim(
		'h'
		FROM
			'hhhhhhhhhhhh李晶晶hhhhhhhhhhhhh'
	) AS result;

# lpad、rpad 左填充右填充
SELECT
	LPAD('ljj', 5, '菜逼') AS res;

SELECT
	RPAD('ljj', 5, '垃圾') AS res;

# replace 参数是(源字符,要替换的字符,换成什么字符)
SELECT
	REPLACE (
		'我真的好难受,555',
		'难受',
		'痛苦'
	) AS res;

数学函数

# 数学函数
# round 四舍五入
SELECT
	ROUND(3.14159) AS res;

# 结果为3
SELECT
	ROUND(3.14159, 2) AS res;

# 保留两位小数
# ceil 向上取整
SELECT
	CEIL(3.14) AS res;

# floor 向下取整
SELECT
	FLOOR(3.14) AS res;

# truncate 保留几位小数
SELECT
	TRUNCATE (3.14, 1) AS res;

# mod 取余
SELECT
	MOD (10, 3) AS res;


日期函数

-- 日期函数
-- now 当前系统日期+时间
SELECT
	NOW();

-- CURDATE 当前系统日期
SELECT
	CURDATE();

-- CURTIME 当前系统时间
SELECT
	CURTIME();

-- year、month、day、hour、minite、second
SELECT
	YEAR (hiredate) AS YEAR,
	MONTH (hiredate) AS MONTH,
	DAY (hiredate) AS DAY
FROM
	employees;

-- str_to_date 按照指定格式解析字符串为日期
SELECT
	STR_TO_DATE(
		'2021年4月3日',
		'%Y年%c月%d日'
	) AS date;

-- date_format  将日期转换成指定的字符串格式
SELECT
	DATE_FORMAT(NOW(), '%Y年%m月%d日') AS result;

统计函数

USE myemployees;

# 统计函数 (null都会被自动忽略的)
SELECT
	SUM(salary),
	AVG(salary),
	MIN(salary),
	MAX(salary),
	COUNT(salary)
FROM
	employees;

# sum和avg仅支持数值型,min和max还支持字符型和日期,count什么都支持
# 这些统计函数都可以搭配distinct去重使用
SELECT
	SUM(DISTINCT salary)
FROM
	employees;

SELECT
	COUNT(DISTINCT department_id)
FROM
	employees;

流程控制函数

USE myemployees;

# 流程控制函数
# if 
# 第一个参数是表达式,为真返回第二个参数,为假返回第三个参数
SELECT

IF (10 > 4, '真', '假') AS res;

SELECT

IF (
	commission_pct IS NULL,
	0,
	commission_pct
) AS 奖金
FROM
	employees;

# case 多分支结构
SELECT
	salary,
	department_id,
	CASE
WHEN salary < 10000 THEN
	'少'
WHEN salary < 15000 THEN
	'中等'
ELSE
	'多'
END AS 工资情况
FROM
	employees;

其他函数

# 其他函数
SELECT
	VERSION();

SELECT
	DATABASE ();

SELECT
	USER ();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值