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

yizhihongxing

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数据库表中取出随机数据的代码,可使用以下两种方式实现: 方式一:使用MySQL自带的RAND()函数 在查询时,可以添加RAND()函数来实现随机排序,然后使用LIMIT进行限制数据条数,即可取出随机数据。以下为示例代码: SELECT * FROM `table_name` ORDER BY RAND() LIMIT 10; 说明:- “tab…

    database 2023年5月19日
    00
  • mysql普通表变成分区表导入导出

    环境:tidb、linux 1、先确认主键、创建分区表(用于代替原表) SELECT column_name FROM INFORMATION_SCHEMA.`KEY_COLUMN_USAGE` WHERE table_name=’wpt_dzxx_chdzb_20200813′ AND constraint_name=’PRIMARY’; 2、去除原表重复…

    MySQL 2023年4月13日
    00
  • 浅谈MySQL如何优雅的做大表删除

    我会根据以下大纲给出”浅谈MySQL如何优雅的做大表删除”的完整攻略。 I. 优化删除操作的SQL语句- 使用DELETE语句时避免使用WHERE子句匹配整个表- 分批删除,使用LIMIT和ORDER BY子句定位需要的行- 考虑对相关表建立索引以提高删除操作速度 II. 使用TRUNCATE操作删除表数据- TRUNCATE比DELETE更快,因为它不记录…

    database 2023年5月19日
    00
  • SQL中where语句的用法及实例代码(条件查询)

    当我们需要从数据库中获取一些指定的数据时,一般会使用 SQL 的条件查询语句 WHERE。WHERE 语句可以根据条件来筛选出需要的数据行。本文将向您具体介绍 WHERE 的用法及实例代码。 WHERE 语句的格式 WHERE 语句的一般格式如下: SELECT column1, column2, … FROM table_name WHERE cond…

    database 2023年5月21日
    00
  • Myeclipse链接Oracle等数据库时lo exception: The Network Adapter could not establish the connection

    当使用MyEclipse链接Oracle数据库时,可能会遇到“lo exception: The Network Adapter could not establish the connection”错误。这通常是因为数据库的驱动程序没有正确配置而导致的。下面是一个完整的攻略,用于解决这个问题: 确认数据库驱动程序已正确配置 首先,在MyEclipse中打开…

    database 2023年5月18日
    00
  • sql server的 update from 语句的深究

    下面是一份 SQL Server update from 语句的深入攻略。 什么是 Update from 语句? Update from 语句是一种 SQL Server 的数据更新语句,它可以根据查询结果集来更新某个或多个数据表中的数据。通常情况下,Update from 语句可以更加高效、有效地更新大批量数据。 Update from 语句的一般格式:…

    database 2023年5月21日
    00
  • Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数示例代码

    下面是Docker部署SpringBoot项目整合Redis镜像做访问计数的完整攻略,包括以下几个步骤: 1. 编写SpringBoot项目代码 首先需要编写一个基于SpringBoot框架的Web项目,并在其中整合Redis用于做访问计数。这个项目需要满足以下几点: 有一个访问计数的处理逻辑,每次访问该项目时,访问计数都会加一。 整合了Redis,并在每次…

    database 2023年5月22日
    00
  • 一个删选数据的例子,使用GROUP、DISTINCT实例解析

    下面我将详细讲解“一个删选数据的例子,使用GROUP、DISTINCT实例解析”的完整攻略。 写在前面 在开始讲解之前,首先需要理解两个概念——GROUP和DISTINCT:- GROUP:按照指定的列对数据进行分组,通常用于统计数据,使用方式为GROUP BY 列名。- DISTINCT:对指定的列去重,使用方式为SELECT DISTINCT 列名。 在…

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