当前位置: 首页 > news >正文

mysql中提供的函数

文章目录

    • 1.聚合函数
    • 2.字符串函数
    • 3.数值函数
    • 4.日期函数
    • 5.流程函数

MySQL 是一个功能强大的关系型数据库管理系统,其中包含了丰富的内置函数,用于处理各种数据操作和查询。这些函数可以分为多种类型,包括字符串函数、数值函数、日期和时间函数、聚合函数以及控制流函数。本文将介绍这些常用的 MySQL 函数,帮助您更好地利用 MySQL 进行数据操作和分析。

1.聚合函数

介绍:将一列数据作为一个整体,进行纵向计算 。通常与GROUP BY一起使用。

函数功能
count统计数量
max最大值
min最小值
avg平均值
sum求和

语法(不能用在where后):

SELECT 聚合函数(字段列表) FROM 表名 ;

注意 : NULL值是不参与所有聚合函数运算的。

2.字符串函数

MySQL中内置了很多字符串函数,常用的几个如下:

函数功能
CONCAT (S1,S2,…Sn)字符串拼接,将S1, S2, …, Sn拼接成一个字符串
LOWER (str)将字符串str全部转为小写
UPPER (str)将字符串str全部转为大写
LPAD (str,n,pad)左填充,用字符串pad对str的左边进行填充,达到n个字符长度
RPAD (str,n,pad)右填充,用字符串pad对str的右边进行填充,达到n个字符长度
TRIM(str)去掉字符串头部和尾部的空格
SUBSTRING (str, start, len)返回从字符串str从start位置起的len个长度的字符串

3.数值函数

常见的数值函数如下:

函数功能
CELL(x)向上取整,用于将浮点数x向上取整到最接近的整数
FLOOR(x)向下取整,用于将浮点数x向下取整到最接近的整数
MOD(x, y)返回除法余数,即x除以y的余数
RAND()返回一个在0到1之间的随机浮点数
ROUND(x, y)返回四舍五入后的浮点数,保留y位小数

4.日期函数

常见的日期函数如下:

函数功能
CURDATE()返回当前日期
CURTIME()返回当前时间
NOW()返回当前日期和时间
YEAR(date)获取指定date的年份
MONTH(date)获取指定date的月份
DAY(date)获取指定date的日期
DATE_ADD(date, INTERVAL expr type)返回一个日期/时间值加上一个时间间隔expr后的时间值
DATEDIFF(date1, date2)返回起始时间date1和结束时间date2之间的天数

5.流程函数

流程函数也是很常用的一类函数,可以在SQL语句中实现条件筛选,从而提高语句的效率。

函数功能描述示例
IF(condition, true_value, false_value)如果条件condition为真,则返回true_value;否则返回false_valueIF(value, t, f)
IFNULL(expression1, expression2)如果expression1不为空,则返回expression1;否则返回expression2IFNULL(value1, value2)
CASE WHEN [condition] THEN [result] … ELSE [default] END根据一系列条件进行判断,如果条件为真,则返回对应的结果;如果所有条件都不为真,则返回默认值CASE WHEN [val1] THEN [res1] … ELSE [default] END
CASE [expr] WHEN [val1] THEN [res1] … ELSE [default] END如果expr的值等于val1,则返回res1;否则返回default默认值CASE [expr] WHEN [val1] THEN [res1] … ELSE [default] END

注意下面这两个sql是相等的:

CASE WHEN a = 1 THEN [result]ELSE [default] END;
CASE a WHEN 1 THEN [res1]ELSE [default] END

并且 WHEN THEN 可以有多个:

CASE `subject` WHEN '数学'  THEN score1 WHEN '第二个When' THEN score2 ELSE 0 END

在标准SQL中,使用=来进行相等比较,而不是==。MySQL遵循这一标准,因此推荐使用=来保持与其他数据库系统的一致性。

由于流程语句中经常出现条件判断,所以提供如下附录(SQL 中的比较运算符和逻辑运算符)。

比较运算符及其功能

运算符功能
>大于
>=大于或等于
<小于
<=小于或等于
=等于
<>!=不等于
BETWEEN ... AND ...检查值是否在指定范围内(包含边界值)
IN (...)检查值是否在指定的列表中(多选一)
LIKE 占位符使用占位符进行模糊匹配。_ 匹配单个字符,% 匹配任意个字符
IS NULL检查值是否为 NULL
REGEXPRLIKE正则表达式匹配

逻辑运算符及其功能:

运算符功能
AND&&并且 (多个条件同时成立) ,与(逻辑与)
OR||或者 (多个条件任意一个成立) ,或(逻辑或)
NOT!非 (条件不成立) ,非(逻辑非)
XOR异或(逻辑异或)

在 MySQL 中,XOR 运算符可以用来连接两个布尔条件,只有当这两个条件中有且仅有一个为 TRUE 时,结果才为 TRUE。如果两个条件都是 TRUE 或都是 FALSE,结果为 FALSE。在进行其他判断时,除了针对 10 之间返回 1,其他都会返回 0。

在其他编程语言中,异或运算符的符号通常是 ^,但在 SQL 中(特别是 MySQL),你需要使用 XOR 关键字。因为 ^|&一样在 MySQL 中是按位运算。

相关文章:

mysql中提供的函数

文章目录 1.聚合函数2.字符串函数3.数值函数4.日期函数5.流程函数 MySQL 是一个功能强大的关系型数据库管理系统&#xff0c;其中包含了丰富的内置函数&#xff0c;用于处理各种数据操作和查询。这些函数可以分为多种类型&#xff0c;包括字符串函数、数值函数、日期和时间函数…...

加速下载,揭秘Internet Download Manager2024下载器的威力!

1. Internet Download Manager&#xff08;IDM&#xff09;是一款广受欢迎的下载管理软件&#xff0c;以其强大的下载加速功能和用户友好的界面著称。 IDM马丁正版下载如下: https://wm.makeding.com/iclk/?zoneid34275 idm最新绿色版一键安装包链接&#xff1a;抓紧保存以…...

oracle 宽表设计

Oracle宽表设计主要涉及到数据库表或视图中字段&#xff08;列&#xff09;数量较多的情况。在Oracle 23c及以后的版本中&#xff0c;数据库表或视图中允许的最大列数已增加到4096&#xff0c;这为宽表设计提供了更大的灵活性。以下是对Oracle宽表设计的详细分析&#xff1a; …...

winrar安装好后,鼠标右键没有弹出解压的选项

本来安装挺好的&#xff0c;可以正常使用&#xff0c;有天我把winrar相关的文件挪了个位置&#xff0c;就不能正常使用了。 然后我去应用里面找&#xff0c;找到应用标识了&#xff0c;但是找不到对应的文件夹&#xff08;因为我挪到另外一个文件夹里了&#xff09;。 于是我找…...

数字图像处理笔记(一)---- 图像数字化与显示

系列文章目录 数字图像处理学习笔记&#xff08;一&#xff09;---- 图像数字化与显示 数字图像处理笔记&#xff08;二&#xff09;---- 像素加图像统计特征 数字图像处理笔记&#xff08;三) ---- 傅里叶变换的基本原理 文章目录 系列文章目录前言一、数字图像处理二、图像数…...

Unity UGUI 之 事件接口

本文仅作学习笔记与交流&#xff0c;不作任何商业用途 本文包括但不限于unity官方手册&#xff0c;唐老狮&#xff0c;麦扣教程知识&#xff0c;引用会标记&#xff0c;如有不足还请斧正 本文在发布时间选用unity 2022.3.8稳定版本&#xff0c;请注意分别 1.什么是事件接口&…...

Hadoop、HDFS、MapReduce 大数据解决方案

本心、输入输出、结果 文章目录 Hadoop、HDFS、MapReduce 大数据解决方案前言HadoopHadoop 主要组件的Web UI端口和一些基本信息MapReduceMapReduce的核心思想MapReduce的工作流程MapReduce的优缺点Hadoop、HDFS、MapReduce 大数据解决方案 编辑 | 简简单单 Online zuozuo 地址…...

Dubbo SPI 之负载均衡

1. 背景介绍 在分布式系统中&#xff0c;负载均衡是一项核心技术&#xff0c;旨在将请求合理地分配到多个服务实例上&#xff0c;以提高系统的性能和可靠性。Dubbo 作为一个高性能的 Java RPC 框架&#xff0c;提供了多种负载均衡策略来满足不同的业务需求。本文将深入探讨 Du…...

规范:前后端接口规范

1、前言 随着互联网的高速发展&#xff0c;前端页面的展示、交互体验越来越灵活、炫丽&#xff0c;响应体验也要求越来越高&#xff0c;后端服务的高并发、高可用、高性能、高扩展等特性的要求也愈加苛刻&#xff0c;从而导致前后端研发各自专注于自己擅长的领域深耕细作。 然…...

Python --NumPy库基础方法(2)

NumPy Numpy(Numerical Python) 是科学计算基础库&#xff0c;提供大量科学计算相关功能&#xff0c;比如数据统计&#xff0c;随机数生成等。其提供最核心类型为多维数组类型&#xff08;ndarray&#xff09;&#xff0c;支持大量的维度数组与矩阵运算&#xff0c;Numpy支持向…...

音视频入门基础:H.264专题(15)——FFmpeg源码中通过SPS属性获取视频帧率的实现

音视频入门基础&#xff1a;H.264专题系列文章&#xff1a; 音视频入门基础&#xff1a;H.264专题&#xff08;1&#xff09;——H.264官方文档下载 音视频入门基础&#xff1a;H.264专题&#xff08;2&#xff09;——使用FFmpeg命令生成H.264裸流文件 音视频入门基础&…...

【C++高阶】哈希之美:探索位图与布隆过滤器的应用之旅

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;模拟实现unordered 的奥秘 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀哈希应用 &#x1f4…...

文件包涵条件竞争(ctfshow82)

Web82 利用 session.upload_progress 包含文件漏洞 <!DOCTYPE html> <html> <body> <form action"https://09558c1b-9569-4abd-bf78-86c4a6cb6608.challenge.ctf.show//" method"POST" enctype"multipart/form-data"> …...

通信原理-思科实验三:无线局域网实验

实验三 无线局域网实验 一&#xff1a;无线局域网基础服务集 实验步骤&#xff1a; 进入物理工作区&#xff0c;导航选择 城市家园; 选择设备 AP0&#xff0c;并分别选择Laptop0、Laptop1放在APO范围外区域 修改笔记本的网卡&#xff0c;从以太网卡切换到无线网卡WPC300N 切…...

*算法训练(leetcode)第三十一天 | 1049. 最后一块石头的重量 II、494. 目标和、474. 一和零

刷题记录 *1049. 最后一块石头的重量 II*494. 目标和474. 一和零 *1049. 最后一块石头的重量 II leetcode题目地址 本题与分割等和子集类似&#xff0c;要达到碰撞最后的石头重量最小&#xff0c;则尽可能把石头等分为两堆。 时间复杂度&#xff1a; O ( m ∗ n ) O(m * n)…...

mac中如何使用obs推流以及使用vlc播放

使用obs推流 1.打开obs&#xff0c;在“来源”框中->点加号->选择媒体源->选择本地ts文件 2.obs中->点击右下角设置->点直播->服务选自定义->服务器填写你的srt服务url&#xff0c;比如&#xff1a;srt://192.168.13.211:14000?modecaller 注意&#xff…...

shopee虾皮 java后端 一面面经 整体感觉不难

面试总结&#xff1a;总体不难&#xff0c;算法题脑抽了只过了一半&#xff0c;面试官点出了问题说时间到了&#xff0c;反问一点点&#xff0c;感觉五五开&#xff0c;许愿一个二面 1.Java中的锁机制&#xff0c;什么是可重入锁 Java中的机制主要包括 synchronized关键字 Loc…...

HydraRPC: RPC in the CXL Era——论文阅读

ATC 2024 Paper CXL论文阅读笔记整理 问题 远程过程调用&#xff08;RPC&#xff09;是分布式系统中的一项基本技术&#xff0c;它允许函数在远程服务器上通过本地调用执行来促进网络通信&#xff0c;隐藏底层通信过程的复杂性简化了客户端/服务器交互[15]。RPC已成为数据中心…...

pve笔记

配置显卡直通参考 https://blog.csdn.net/m0_59148723/article/details/130923893 https://foxi.buduanwang.vip/virtualization/pve/561.html/ https://www.cnblogs.com/MAENESA/p/18005241 https://www.wangsansan.com/archives/181/ pve配置显卡直通到虚拟机后&#xff0c;…...

typecho仿某度响应式主题Xaink

新闻类型博客主题&#xff0c;简洁好看&#xff0c;适合资讯类、快讯类、新闻类博客建站&#xff0c;响应式设计&#xff0c;支持明亮和黑暗模式 直接下载 zip 源码->解压后移动到 Typecho 主题目录->改名为xaink->启用。 演示图&#xff1a; 下载链接&#xff1a; t…...

无感定位技术白皮书——传统ReID跨镜跟踪局限重重,无短板碾压式突破

前言在智慧安防、智慧园区、工业物联网等数字化转型核心场景中&#xff0c;跨摄像头目标追踪与精准定位是支撑场景智能化升级的关键底座。长期以来&#xff0c;ReID&#xff08;行人重识别&#xff09;技术因无需额外硬件部署、可依托目标外观特征实现跨镜身份关联&#xff0c;…...

PlantUML Editor:用代码思维重塑UML绘图的现代工具

PlantUML Editor&#xff1a;用代码思维重塑UML绘图的现代工具 【免费下载链接】plantuml-editor PlantUML online demo client 项目地址: https://gitcode.com/gh_mirrors/pl/plantuml-editor 你是否厌倦了传统拖拽式UML工具的繁琐操作&#xff1f;PlantUML Editor将彻…...

基于sagents框架的AI智能体开发:从核心原理到实战应用

1. 项目概述&#xff1a;一个面向开发者的AI智能体构建框架最近在AI应用开发圈子里&#xff0c;一个名为sagents的开源项目开始引起不少同行的注意。如果你正在寻找一个能帮你快速构建、测试和部署AI智能体&#xff08;Agent&#xff09;的框架&#xff0c;而不是从零开始造轮子…...

接手遗留系统第一周,我做了三件事,团队从此不再怕改老代码

刚跳槽到新公司&#xff0c;技术总监在入职谈话时递给我一杯咖啡&#xff0c;语气沉重地说&#xff1a;“我们最核心的交易系统已经跑了八年&#xff0c;负责它的老张去年离职了。现在整个团队没人敢动里面的代码&#xff0c;每次改需求都像在拆炸弹。”他停顿了一下&#xff0…...

大语言模型本地化部署利器:Synaptic-Link 模型文件管理工具详解

1. 项目概述与核心价值最近在折腾一些AI相关的本地化部署和模型管理&#xff0c;发现一个挺有意思的项目&#xff0c;叫dlxeva/synaptic-link。乍一看这个名字&#xff0c;可能有点摸不着头脑&#xff0c;“突触链接”&#xff1f;听起来像是神经科学或者生物信息学的东西。但如…...

fastmod vs codemod:为什么你应该选择这个更快的代码替换工具

fastmod vs codemod&#xff1a;为什么你应该选择这个更快的代码替换工具 【免费下载链接】fastmod A fast partial replacement for the codemod tool. Assists with large-scale codebase refactors via regex-based find and replace with human oversight and occasional i…...

本地包管理器指南:实现开发环境隔离与依赖管理的工程实践

1. 项目概述&#xff1a;一个为开发者而生的本地包管理器指南如果你是一名开发者&#xff0c;尤其是经常在本地环境折腾各种工具、依赖和项目配置的开发者&#xff0c;那么“包管理器”这个词对你来说一定不陌生。无论是 Node.js 的 npm/yarn/pnpm&#xff0c;Python 的 pip/co…...

从 LLM 到 Agent:Harness Engineering 的角色演变

从 LLM 到 Agent:Harness Engineering 的角色演变 本文字数:约10200字 | 阅读时间:25分钟 | 适合人群:AI算法工程师、产品经理、技术负责人、AI应用开发者 1. 引入与连接:被忽略的AI落地核心桥梁 1.1 开场:一个真实的AI落地场景 2024年中,某互联网公司运维团队负责人李…...

Simics在网络转型与SDN迁移中的核心价值与应用

1. Simics在网络转型与SDN迁移中的核心价值解析网络架构正经历从传统硬件设备向软件定义网络(SDN)和网络功能虚拟化(NFV)的深刻变革。这场变革的核心挑战在于&#xff1a;如何在保持网络高性能的同时&#xff0c;实现控制平面与数据平面的解耦&#xff0c;以及如何将传统网络功…...

Go语言WebSocket服务器tocket:轻量级高性能实时通信方案

1. 项目概述&#xff1a;一个轻量级、高性能的WebSocket服务器 最近在折腾一个需要实时双向通信的物联网项目&#xff0c;传统的HTTP轮询方案在延迟和服务器开销上都不太理想&#xff0c;WebSocket自然就成了首选。在技术选型时&#xff0c;我习惯性地会去GitHub上搜罗一番&…...