Mysql-常用函数及其用法总结

1、字符串函数

测试用例如下:

1.1 CONCAT()

将多个字符串连接成一个字符串。

复制代码
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM users;
-- 期望结果:'John Doe', 'Jane Smith', 'Michael Johnson'

1.2 SUBSTRING()

提取子字符串

SELECT SUBSTRING(column_name, start_pos, length) FROM table_name;

复制代码
SELECT SUBSTRING(first_name, 1, 3) AS short_name FROM users;
-- 期望结果:'Joh', 'Jan', 'Mic'

1.3 UPPER()

将字符串转换为大写

SELECT UPPER(column_name) FROM table_name;

复制代码
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM users;
-- 期望结果:'John Doe', 'Jane Smith', 'Michael Johnson'

1.4 LOWER()

将字符串转换为小写

SELECT LOWER(column_name) FROM table_name;

复制代码
SELECT LOWER(last_name) AS lower_name FROM users;
-- 期望结果:'doe', 'smith', 'johnson'

1.5 LENGTH()

返回字符串的长度

SELECT LENGTH(column_name) FROM table_name;

复制代码
SELECT LENGTH(first_name) AS name_length FROM users;
-- 期望结果:4, 4, 7

1.6 TRIM()

去除字符串两端的空格或指定字符

SELECT TRIM(' ' FROM column_name) FROM table_name;

复制代码
SELECT TRIM(' ' FROM ' John Doe ') AS trimmed_name;
-- 期望结果:'John Doe'

1.7 REPLACE()

替换字符串中的字串

SELECT REPLACE(column_name, 'old_string', 'new_string') FROM table_name;

复制代码
SELECT REPLACE(first_name, 'J', 'M') AS replaced_name FROM users;
-- 期望结果:'Monn', 'Mane', 'Michael'

2、数值函数

测试用例如下:

2.1 SUM()

计算数值列的总和。

SELECT SUM(column_name) FROM table_name;

复制代码
SELECT SUM(quantity) AS total_quantity FROM sales;
-- 期望结果:23

2.2 AVG()

计算数值列的平均值

SELECT AVG(column_name) FROM table_name;

复制代码
SELECT AVG(unit_price) AS average_price FROM sales;
-- 期望结果:16.083333

2.3 COUNT()

计算行数或者非NULL值的数量

SELECT COUNT(*) FROM table_name;

复制代码
SELECT COUNT(\*) AS total_records FROM sales;
-- 期望结果:3

2.4 MAX()

返回数值列的最大值

SELECT MAX(column_name) FROM table_name;

复制代码
SELECT MAX(unit_price) AS max_price FROM sales;
-- 期望结果:20.00

2.5 MIN()

返回数值列的最小值

2.6 ROUND()

对小数四舍五入到指定位数

SELECT ROUND(column_name, decimals) FROM table_name;

SELECT ROUND(unit_price, 1) AS rounded_price FROM sales;

-- 期望结果:15.5, 20.0, 12.8

3、日期函数

相关推荐
疯狂的挖掘机6 小时前
记一次基于QT的图片操作处理优化思路(包括在图上放大缩小,截图,画线,取值等)
开发语言·数据库·qt
奇树谦8 小时前
Qt | 利用map创建多个线程和定时器
网络·数据库·qt
用户47949283569158 小时前
性能提升 4000%!我是如何解决 运营看板 不能跨库&跨库查询慢这个难题的
数据库·后端·postgresql
电商API&Tina8 小时前
跨境电商 API 对接指南:亚马逊 + 速卖通接口调用全流程
大数据·服务器·数据库·python·算法·json·图搜索算法
robinson19888 小时前
验证崖山数据库标量子查询是否带有CACHE功能
数据库·oracle·cache·自定义函数·崖山·标量子查询
老华带你飞8 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
SelectDB9 小时前
5 倍性能提升,Apache Doris TopN 全局优化详解|Deep Dive
数据库·apache
JIngJaneIL10 小时前
基于springboot + vue房屋租赁管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
陈平安安10 小时前
设计一个秒杀功能
java·数据库·sql
isNotNullX10 小时前
数据处理的流程是什么?如何进行数据预处理?
数据库·数据资产管理·数据处理·企业数字化