mysql常用函数实例总结【聚集函数、字符串、数值、时间日期处理等】

MySQL常用函数实例总结

MySQL提供了众多的函数,用于处理数据的聚合、字符串、数值、时间日期等方面,可以实现各种复杂的数据处理操作。本文将对MySQL常用函数进行总结,以供参考。

1. 聚集函数

常用的聚集函数有:COUNT、SUM、AVG、MAX、MIN。

COUNT函数:统计行数

COUNT函数用于统计满足条件的记录数,它可以对一列或多列进行统计。语法如下:

COUNT(column_name)

示例:

查询students表中记录的总行数:

SELECT COUNT(*) FROM students;

SUM函数:计算总和

SUM函数用于计算指定列的总和。语法如下:

SUM(column_name)

示例:

计算order_items表中所有订单数量的总和:

SELECT SUM(quantity) FROM order_items;

AVG函数:计算平均数

AVG函数用于计算指定列的平均数。语法如下:

AVG(column_name)

示例:

计算sales表中所有销售额的平均值:

SELECT AVG(amount) FROM sales;

MAX函数:找出最大值

MAX函数用于找出指定列的最大值。语法如下:

MAX(column_name)

示例:

查询students表中年龄最大的学生信息:

SELECT * FROM students WHERE age = (SELECT MAX(age) FROM students);

MIN函数:找出最小值

MIN函数用于找出指定列的最小值。语法如下:

MIN(column_name)

示例:

查询students表中年龄最小的学生信息:

SELECT * FROM students WHERE age = (SELECT MIN(age) FROM students);

2. 字符串函数

常用的字符串函数有:CONCAT、SUBSTRING、LENGTH、TRIM、UPPER、LOWER。

CONCAT函数:连接字符串

CONCAT函数用于连接两个或多个字符串。语法如下:

CONCAT(string1, string2, ...)

示例:

将first_name和last_name列连接成full_name列:

SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM students;

SUBSTRING函数:提取子串

SUBSTRING函数用于从字符串中提取子串。语法如下:

SUBSTRING(string, start, length)

示例:

提取students表中每个学生的姓名的第一个字母:

SELECT SUBSTRING(first_name, 1, 1) AS initials FROM students;

LENGTH函数:返回字符串长度

LENGTH函数用于返回字符串的长度。语法如下:

LENGTH(string)

示例:

查询students表中每个学生的名字长度:

SELECT first_name, LENGTH(first_name) AS name_length FROM students;

TRIM函数:去除字符串两端的空格

TRIM函数用于去除字符串两端的空格。语法如下:

TRIM(string)

示例:

查询students表中每个学生的名字,去除两端空格:

SELECT TRIM(first_name) AS name FROM students;

UPPER函数:将字符串转换为大写

UPPER函数用于将字符串转换为大写。语法如下:

UPPER(string)

示例:

查询students表中每个学生的名字,以大写字母显示:

SELECT UPPER(first_name) AS name FROM students;

LOWER函数:将字符串转换为小写

LOWER函数用于将字符串转换为小写。语法如下:

LOWER(string)

示例:

查询students表中每个学生的名字,以小写字母显示:

SELECT LOWER(first_name) AS name FROM students;

3. 数值函数

常用的数值函数有:ROUND、CEILING、FLOOR、RAND。

ROUND函数:四舍五入

ROUND函数用于对数值进行四舍五入。语法如下:

ROUND(number, decimals)

示例:

查询sales表中每个订单的总价,保留两位小数:

SELECT ROUND(price * quantity, 2) AS total_price FROM sales;

CEILING函数:向上取整

CEILING函数用于向上取整。语法如下:

CEILING(number)

示例:

查询students表中每个学生的平均成绩,向上取整:

SELECT CEILING((math_score + english_score + science_score) / 3) AS average_score FROM students;

FLOOR函数:向下取整

FLOOR函数用于向下取整。语法如下:

FLOOR(number)

示例:

查询sales表中每个订单的平均价格,向下取整:

SELECT FLOOR(price * quantity / order_id) AS average_price FROM order_items;

RAND函数:返回随机数

RAND函数用于返回一个0~1之间的随机数。语法如下:

RAND()

示例:

查询students表中随机选择两个学生的信息:

SELECT * FROM students ORDER BY RAND() LIMIT 2;

4. 时间日期函数

常用的时间日期函数有:NOW、DATE_FORMAT、DATE_ADD、DATEDIFF。

NOW函数:返回当前时间

NOW函数用于返回当前时间。语法如下:

NOW()

示例:

查询当前时间:

SELECT NOW();

DATE_FORMAT函数:格式化日期

DATE_FORMAT函数用于将日期格式化成指定的格式。语法如下:

DATE_FORMAT(date, format)

示例:

将sales表中的订单日期格式化成年-月-日的格式:

SELECT DATE_FORMAT(order_date, '%Y-%m-%d') AS date FROM sales;

DATE_ADD函数:日期加减

DATE_ADD函数用于对日期进行加减操作。语法如下:

DATE_ADD(date, INTERVAL value unit)

示例:

查询距离今天10天前的日期:

SELECT DATE_ADD(NOW(), INTERVAL -10 DAY) AS date;

DATEDIFF函数:计算日期差值

DATEDIFF函数用于计算两个日期之间的天数差值。语法如下:

DATEDIFF(date1, date2)

示例:

查询距离今天还有多少天是2022年1月1日:

SELECT DATEDIFF('2022-01-01', NOW()) AS days_left;

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql常用函数实例总结【聚集函数、字符串、数值、时间日期处理等】 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • mysql中如何优化表释放表空间

    对于 MySQL 中的表,数据一旦被删除并不会立刻释放存储空间,这会导致表的存储空间不断占据,而在长期运行的大型应用程序中,存储空间的消耗会越来越严重。因此我们需要定期清理和优化表,以释放表空间。 下面是优化表释放表空间的完整攻略: 1. 确认表空间使用情况 首先需要确认表的实际空间使用情况。 可以使用以下 SQL 查询语句: SHOW TABLE STAT…

    database 2023年5月19日
    00
  • golang 64位linux环境下编译出32位程序操作

    要在64位Linux环境下编译出32位程序,需要使用交叉编译。下面是步骤: 环境准备 安装gcc和golang的32位开发库: $ sudo apt install gcc-multilib $ sudo apt install libc6-dev-i386 下载并安装32位的 Golang(假设你的 GOPATH 为 $HOME/go): $ cd ~ $…

    database 2023年5月22日
    00
  • SQL Server的触发器详解

    SQL Server的触发器详解 什么是触发器 在数据库中,触发器是与表相关联的特殊存储过程,它在表上的某些事件发生时自动执行。触发器在向表插入、更新或删除数据时扮演着极为重要的角色。SQL Server 等关系型数据库管理系统 (RDBMS) 提供了触发器功能来实现数据约束和数据同步等多个方面的需求。 触发器通常在以下情况下使用:- 针对表执行的约束和规则…

    database 2023年5月21日
    00
  • 在Mac OS上安装Oracle数据库的基本方法

    下面是详细讲解在Mac OS上安装Oracle数据库的基本方法的完整攻略。 确认环境 在安装Oracle之前,首先需要确认以下条件: Mac OS版本:Oracle 12c仅支持OS X 10.10 Yosemite及以上版本,Oracle 11g支持OS X 10.6及以上版本; 硬件要求:建议内存至少为2GB,空闲磁盘空间不少于10GB; 下载Oracl…

    database 2023年5月22日
    00
  • SQL 多字段排序

    当需要按照多个字段排序时,可以用SQL的ORDER BY子句,它可以按照多个字段进行排序。下面是ORDER BY子句的语法: SELECT column1, column2, … FROM table_name ORDER BY column1 DESC, column2 ASC, …; 在此语法中,ORDER BY后面跟着一个或多个列名,用逗号分隔…

    database 2023年3月27日
    00
  • MariaDB中1045权限错误导致拒绝用户访问的错误解决方法

    下面我将详细讲解“MariaDB中1045权限错误导致拒绝用户访问的错误解决方法”的完整攻略: 问题描述 在使用MariaDB时,有可能会遇到如下报错 ERROR 1045 (28000): Access denied for user ‘user_name’@’localhost’ (using password: YES) 该错误通常原因是用户的登录名或…

    database 2023年5月18日
    00
  • 让MySQL数据库跑的更快 为数据减肥

    让MySQL数据库跑的更快是一个复杂的问题,涉及多个方面的优化。其中一个重点是为数据减肥,即优化数据库中存储的数据,使其占用空间更小,提高查询效率。以下是一个完整的攻略,涵盖了多个优化技巧和示例: 1. 使用合适的数据类型 在设计数据库时,使用合适的数据类型可以避免数据存储空间的浪费。比如,如果只需要存储0或1这两个取值,可以使用布尔类型,而不是CHAR(1…

    database 2023年5月19日
    00
  • SQL 变换带有小计的结果集

    SQL 变换(transformation)用于对结果集进行计算、排序、过滤等操作,小计(subtotal)则是在对某一列或多列进行计算后,对计算结果进行汇总,一般用于统计数据分析等场景。下面是SQL 变换带有小计的完整攻略。 1. 使用 GROUP BY 实现小计 GROUP BY 语句用于将结果集按指定列进行分组,同时可以使用聚合函数对分组后的数据进行计…

    database 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部