sql 语句相关的函数

1. 聚合函数

这些函数用于对一组值进行计算,并返回单个值。

1.COUNT(): 计算行数。count
SELECT COUNT(*) FROM students;

2.SUM(): 求和。sum
SELECT SUM(salary) FROM employees;

3.AVG(): 计算平均值。avg
SELECT AVG(score) FROM test_scores;

4.MAX(): 找到最大值。max
SELECT MAX(age) FROM users;

5.MIN(): 找到最小值。min 
SELECT MIN(price) FROM products;

2. 字符串函数

1.CONCAT(): 连接两个或多个字符串。concat
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees;

2.LENGTH(): 返回字符串的长度。length
SELECT LENGTH(name) FROM customers;

3.UPPER(): 将字符串转换为大写。upper
SELECT UPPER(title) FROM books;
4.LOWER(): 将字符串转换为小写。lower
SELECT LOWER(description) FROM products;

5.SUBSTRING(): 提取字符串的一部分。substring
SELECT SUBSTRING(email, 1, 5) FROM users;

3. 日期/时间函数

1.NOW(): 返回当前日期和时间。now
SELECT NOW();

2.CURDATE(): 返回当前日期。curdate
SELECT CURDATE();

3.DATEDIFF(): 计算两个日期之间的差异。datadiff
SELECT DATEDIFF('2024-01-01', '2023-01-01') AS days_difference;

4.DATE_FORMAT(): 格式化日期。date_fromat
SELECT DATE_FORMAT(order_date, '%Y-%m-%d') FROM orders;

4. 数学函数

1.ABS(): 返回绝对值。abs
SELECT ABS(-10) AS absolute_value;

2.CEIL(): 向上取整。ceil
SELECT CEIL(4.3) AS rounded_up;

3.FLOOR(): 向下取整。floor
SELECT FLOOR(4.7) AS rounded_down;

4.POWER(): 计算幂。power
SELECT POWER(2, 3) AS two_cubed;  -- 2^3 = 8

5. ROUND():取整round

ROUND 是一个常用的数学函数,用于对数字进行四舍五入。它可以在 SQL 查询中使用,以便将某个数值字段的结果四舍五入到指定的小数位数。

ROUND(number, decimals)
  • number: 要四舍五入的数字或表达式。
  • decimals: 指定要保留的小数位数。如果这个参数为 0,则会将数字四舍五入到最接近的整数。
SELECT ROUND(3.14159, 2) AS rounded_value;

5. 条件函数

1.CASE: 条件表达式。case
SELECT name,CASE WHEN score >= 90 THEN 'A'WHEN score >= 80 THEN 'B'ELSE 'C'END AS grade
FROM students;

2.IF(): 简单的条件判断。if
SELECT IF(is_active, 'Active', 'Inactive') AS status FROM users;

6.日期函数(提取日期数据)

1.DAY(data),day

返回日期data是这个月的第几天

2.DAYOFWEEK(date),dayofweek

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。

1

select DAYOFWEEK('1998-02-03')

-> 3

3.WEEKDAY(date),weekday

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。

1

mysql> select WEEKDAY('1997-10-04 22:23:00');

-> 5

4.DAYOFMONTH(date),dayofmonth

返回date的月份中日期,在1到31范围内。

1

mysql> select DAYOFMONTH('1998-02-03');

-> 3

5.DAYOFYEAR(date),dayofyear

返回date在一年中的日数, 在1到366范围内。

1

mysql> select DAYOFYEAR('1998-02-03');

-> 34

6.MONTH(date),month

返回date的月份,范围1到12。

1

mysql> select MONTH('1998-02-03');

-> 2

7.DAYNAME(date),dayname

返回date的星期名字。

1

mysql> select DAYNAME("1998-02-05");

-> 'Thursday'

8.MONTHNAME(date),monthname

返回date的月份名字。

1

mysql> select MONTHNAME("1998-02-05");

-> 'February'

9.QUARTER(date),quarter

返回date一年中的季度,范围1到4。

1

mysql> select QUARTER('98-04-01');

-> 2

10.WEEK(date),week

对于星期天是一周的第一天的地方,有一个单个参数,返回date的周数,范围在0到52。

1

mysql> select WEEK('1998-02-20');

-> 7

11.WEEK(date,first),week

2个参数形式WEEK()允许你指定星期是否开始于星期天或星期一。
如果第二个参数是0,星期从星期天开始,
如果第二个参数是1,从星期一开始。

1

mysql> select WEEK('1998-02-20',0);

-> 7

1

mysql> select WEEK('1998-02-20',1);

-> 8

12.YEAR(date),year

返回date的年份,范围在1000到9999。

1

mysql> select YEAR('98-02-03');

-> 1998

13.HOUR(time),hour

返回time的小时,范围是0到23。

1

mysql> select HOUR('10:05:03');

-> 10

14.MINUTE(time),minute

返回time的分钟,范围是0到59。

1

mysql> select MINUTE('98-02-03 10:05:03');

-> 5

15.SECOND(time),secone

回来time的秒数,范围是0到59。

1

mysql> select SECOND('10:05:03');

-> 3

16.PERIOD_ADD(P,N),period_add

增加N个月到阶段P(以格式YYMM或YYYYMM)。以格式YYYYMM返回值。注意阶段参数P不是日期值。

1

mysql> select PERIOD_ADD(9801,2);

-> 199803

17.PERIOD_DIFF(P1,P2),period_diff

返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。

1

mysql> select PERIOD_DIFF(9802,199703);

-> 11


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/447410.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

思维,CF 1980E - Permutation of Rows and Columns

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 1980E - Permutation of Rows and Columns 二、解题报告 1、思路分析 我…

Golang | Leetcode Golang题解之第476题数字的补数

题目&#xff1a; 题解&#xff1a; func findComplement(num int) int {highBit : 0for i : 1; i < 30; i {if num < 1<<i {break}highBit i}mask : 1<<(highBit1) - 1return num ^ mask }

邻接矩阵的无向图(C语言代码)

无向图是对称的 所以 &#xff1a; G->matrix[i][j] 1; G->matrix[j][i] 1; AB线段为1的同时 BA的线段也为1 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #define MAXVEX 100//最大顶点数 typedef struc…

一键解锁新技能!2024年电脑录屏神器推荐

咱们现在这个时代&#xff0c;电脑录屏软件就跟手机一样&#xff0c;几乎人人都有。不管是教别人怎么做事&#xff0c;记录开会内容&#xff0c;还是把玩游戏时候的高光时刻分享给朋友&#xff0c;有个好用的录屏软件真的能让事情变得简单很多。今天我就来给你介绍四款2024年超…

解决低版本pytorch和onnx组合时torch.atan2()不被onnx支持的问题

解决这个问题&#xff0c;最简单的当然是升级pytorch和onnx到比较高的版本&#xff0c;例如有人验证过的组合: pytorch2.1.1cu118, onnxruntime1.16.3 但是因为你的模型或cuda环境等约束&#xff0c;不能安装这么高的版本的pytorch和onnx组合时(例如我的环境是pytorch1.12&…

数据结构5——队列

1. 队列的概念及结构 队列的概念&#xff1a; 与栈相比&#xff0c;队列也是一种特殊的线性表&#xff0c;不同的是&#xff0c;队列只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作。队列遵守先进先出 FIFO(First In First Out)的原则。 入队列&#xff1…

Qualitor checkAcesso.php 任意文件上传漏洞复现(CVE-2024-44849)

0x01 漏洞概述 Qualitor 8.24及之前版本存在任意文件上传漏洞,未经身份验证远程攻击者可利用该漏洞代码执行,写入WebShell,进一步控制服务器权限。 0x02 复现环境 FOFA:app="Qualitor-Web" 0x03 漏洞复现 PoC POST /html/ad/adfilestorage/request/checkAcess…

暖水毯/取暖毯语音识别控制芯片IC方案

暖水毯、取暖毯作为现代家居生活的温暖伴侣&#xff0c;其智能化升级已是大势所趋。在暖水毯与取暖毯中融入语音识别控制芯片IC方案&#xff0c;为用户的冬日取暖体验带来了革命性的变革。 一、暖水毯/取暖毯增加语音识别控制芯片方案&#xff0c;让产品能通过对话来调节&…

RSA简单实例

RSA简单实例 RSA是一种非对称加密算法&#xff0c;其安全性基于质因数分解的困难性。下面以p3和q5为例&#xff0c;详细解释RSA算法的产生过程以及加密解密过程&#xff1a; 一、RSA算法的产生过程 选择质数&#xff1a; 随机选择两个不相等的质数p和q。在这个例子中&#…

分享5款堪称神器的软件

​ 今天再来推荐5个超级好用的效率软件&#xff0c;每个都堪称神器中的神器&#xff0c;用完后觉得不好用你找我。 1. 启动器——Launchy ​ Launchy是一款开源的启动器软件&#xff0c;帮助用户快速启动应用程序、文件夹和文件。用户只需通过快捷键调出Launchy界面&#xff…

基于WEB的《数据结构》课程学习平台设计与实现---附源码54433

摘 要 本文介绍了一种基于Web的《数据结构》课程学习平台的设计与实现&#xff0c;该平台采用Node.js作为主要后端技术。该平台旨在为学习数据结构的学生提供一个互动性强、功能全面的在线学习环境&#xff0c;同时帮助教师更有效地进行课程管理和学生评估。 本文阐述了平台的…

VUE项目基于源码实现可视化编程技术的探索

背景 在面对大型且高度组件化的项目时&#xff0c;传统的开发模式——即边预览边手动修改代码&#xff0c;往往会因项目结构的复杂性而显得效率低下&#xff0c;尤其是对于新加入项目或对项目结构不够熟悉的开发者而言&#xff0c;从UI界面逆向定位到具体代码实现并作出修改的过…

服务端技术架构演进之路

服务端技术架构演进之路 目录 服务端技术架构演进之路 0.架构中常见概念及理解 1.单机架构 2.应用数据分离架构 3.应用服务器集群架构 4.读写分离/主从分离架构 5.冷热分离架构 6.垂直分库架构 7.微服务架构 8.容器编排架构 本文以一个 " 电子商务 " 应…

Linux_进程控制

一&#xff1a;进程创建 fork()函数创建新进程 #include <unistd.h> pid_t fork(void); 返回值&#xff1a;自进程中返回0&#xff0c;父进程返回子进程id&#xff0c;出错返回-1 进程调用fork&#xff0c;当控制转移到内核中的fork代码后&#xff0c;内核做&#xff1a;…

Qt - 地图相关 —— 1、加载百度在线地图(附源码)

效果图 开始加载地图 1、百度地图开发者网站中注册,获取密钥 2、进入开发文档中 将下图内容保存到本地文件中,文件名为"index.html"文件即可。接着将内容中的“您的密钥”改为刚刚创建应用出来的AK密钥即可。 然后双击打开若在浏览器中正常看到下图右侧地图则说明没…

解压包软件下载:选择合适的解压软件

在日常办公和生活中&#xff0c;解压包软件扮演着至关重要的角色。首先&#xff0c;它极大地便利了文件管理。 随着数字化时代的发展&#xff0c;我们每天都会接触到大量的文件&#xff0c;包括文档、图片、音频、视频等。 这些文件如果不进行有效的管理&#xff0c;很容易变…

element plus的el-select分页

摘要&#xff1a; el-select的数据比较多的时候&#xff0c;必须要分页&#xff0c;处理方案有全部数据回来&#xff0c;或者添加搜索功能&#xff0c;但是就有个问题就是编辑的时候回显问题&#xff0c;必须要保证select的数据有对应的id与name匹配回显&#xff01; <el-fo…

如何在 WinCC Runtime Professional 中自动调整画面分辨率适应窗口的大小?

通过在组态中修改窗口和运行设置&#xff0c;可以使在窗口中显示画面的尺寸自动适应新窗口的尺寸。 问题描述 设备硬件改变&#xff0c;例如更换显示器&#xff0c;会引起 WinCC Runtime Professional 分辨率变化。在WinCC Runtime Professional中分辨率的变化会导致画面显示尺…

安装R和RStudio:开始你的数据分析之旅

数据分析是当今世界中一个非常热门的领域&#xff0c;而R语言是进行数据分析的强大工具之一。R是一种编程语言和软件环境&#xff0c;用于统计计算和图形表示。RStudio是一个集成开发环境&#xff08;IDE&#xff09;&#xff0c;它为R语言提供了一个更加友好和高效的工作环境。…

架构设计笔记-19-大数据架构设计理论与实践

知识要点 案例分析 1.Lambda架构优缺点 2.web架构设计 3.web系统架构设计相关技术 论文