mysql常用函数五大类

mysql常用函数

  • 1. 第一类:数值函数
    • 1.1 圆周率pi的值
    • 1.2 求绝对值
    • 1.3 返回数字的符号
    • 1.4 开平方,根号
    • 1.5 求两个数的余数
    • 1.6 截取正数部分
    • 1.7 向上取整数
    • 1.8 向下取整数
    • 1.9 四舍五入函数
    • 1.10 随机数函数
    • 1.11 数值左边补位函数
    • 1.12 数值右边补位函数
    • 1.13 次方函数
    • 1.14 特殊次方函数e
    • 1.15 对数函数
    • 1.16 其他对数函数
    • 1.17 三角函数
  • 2. 第二类:字符串函数
    • 2.1 计算字符串的长度
    • 2.2 字符串大小写转换
    • 2.3 字符串反转
    • 2.4 字符串合并
    • 2.5 删除空格
    • 2.6 取左右两边的字符串
    • 2.7 取中间的字符串
    • 2.8 返回字符串的位置
    • 2.9 字符串的替换
    • 2.10 比较字符串
    • 2.11 重复字符串
  • 3. 第三类:时间日期函数
    • 3.1 获取当前的日期
    • 3.2 获取当前的时间
    • 3.3 获取当前的日期时间
    • 3.4 获取unix时间戳
    • 3.5 时间戳转为日期
    • 3.6 获取年月日时分秒季度星期
    • 3.7 时间转换为秒
    • 3.8 秒转换为时间
    • 3.9 时间日期的加减
    • 3.10 两个日期相减
    • 3.11 日期格式化
  • 4. 第四类:聚类函数
  • 5. 第五类:逻辑判断函数
    • 5.1. if
    • 5.2 ifnull
    • 5.3 case when

1. 第一类:数值函数

1.1 圆周率pi的值

select pi();

在这里插入图片描述

1.2 求绝对值

  • abs(x)
    • 参数x就是一个数值
select abs(1),abs(-11);

在这里插入图片描述

1.3 返回数字的符号

  • sign(x),x为数值
    • 正数返回1; 负数返回-1; 0返回0
      select sign(1),sign(-2.34),sign(11),sign(0);
      

在这里插入图片描述

1.4 开平方,根号

  • sqrt(x),x是一个数值
    select sqrt(2);
    
    在这里插入图片描述

1.5 求两个数的余数

  • mod(x,y)
    • x除数,y被除数
    select 9/7,mod(9,7) -- 余数;
    
    在这里插入图片描述

1.6 截取正数部分

  • truncate(x,n),n截取的小数的位数
  • 注意:n可以是负数,意思是-1是各位,-2是十位…
    select 9/7,truncate(9/7,0),truncate(9/7,2)341243552352,truncate(341243552352,-2);
    
    在这里插入图片描述

1.7 向上取整数

  • 向上取整数,如果有小数的话,向上进一位,值变大
  • ceil(x),ceiling(x)
    select 12.43434,ceil(12.43434),ceil(-12.43434),ceiling(12.43434);
    
    在这里插入图片描述

1.8 向下取整数

  • 向下取整数,把小数去掉
  • floor(x)
    select 12.43434,floor(12.43434),floor(-12.43434);
    
    在这里插入图片描述

1.9 四舍五入函数

  • round(x,n),n是四舍五入的位数
  • 注意:n可以为负数,-1代表个位,-2代表十位…取0
    select 12.4224,round(12.4224),round(12.4224,2),round(12.4224,-2);
    
    在这里插入图片描述

1.10 随机数函数

  • 产生一个随机数
  • rand(x),0-1之前的一个随机数
    • x是一个数值,如果加这个参数的话,就代表每次产生额随机种子是一样的
    select rand();
    
    在这里插入图片描述

1.11 数值左边补位函数

  • left : lpad(x,n,符号)左边补
  • x:数值,n:补几位,符号:补什么符号
    select lpad(1,4,0),lpad(2,4,0);
    
    在这里插入图片描述

1.12 数值右边补位函数

  • right : rpad(x,n,符号)右边补
  • x:数值,n:补几位,符号:补什么符号
    select rpad(1,4,0),rpad(2,4,'x');
    
    在这里插入图片描述

1.13 次方函数

  • pow(x,n), x n x^n xn
    select pow(2,3);
    
    在这里插入图片描述

1.14 特殊次方函数e

  • exp(x)
    • x是几次方的参数
    -- 自然数e,2.7182818....
    select exp(1);
    
    在这里插入图片描述

1.15 对数函数

  • ln(x),自然数e的对数
    select ln(exp(1));
    
    在这里插入图片描述

1.16 其他对数函数

  • log(x)
    select log(10,1000),round(log(10,1000));
    
    在这里插入图片描述

1.17 三角函数

  • 三角函数:sin,cos,tan,cot…
    select sin(pi()/6),cos(pi()/6),tan(pi()/6),cot(pi()/6);
    
    在这里插入图片描述

2. 第二类:字符串函数

2.1 计算字符串的长度

  • length(x),x字符串
  • 注意:一个中文汉字占3个字节
    select "asjncsdijcdic",length("asjncsdijcdic"),length("你好");
    
    在这里插入图片描述

2.2 字符串大小写转换

  • lower(x),全部转为小写
  • upper(x),全部转为大写
  • x为字符串
    select "HEllo",lower("HEllo"),upper("HEllo");```![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/c582aab030e44a69bf6773290ffc0905.png)

2.3 字符串反转

  • reverse(x)
    select reverse('abc');
    
    在这里插入图片描述

2.4 字符串合并

  • 就是把字符串连在一起

  • concat(s1,s2,s3…)

    select concat('he','el','lo','你好');
    

    在这里插入图片描述

  • concat_ws(分隔符,s1,s2,s3…),指定分隔符连接

    select concat_ws('-','hello','world');
    

    在这里插入图片描述

2.5 删除空格

  • 删除字符串左右两边多余的空格
  • trim(x),删除左右两边的空格
  • ltrim(x),删除左边的空格
  • rtrim(x),删除右边的空格
    • x为字符串
    select "  你好 hello world   ",trim("  你好 hello world   ") trim,ltrim("  你好 hello world   ") ltrim,rtrim("  你好 hello world   ") rtrim;
    
    在这里插入图片描述

2.6 取左右两边的字符串

  • 左边取: left(x,n),x字符串,n取几位
  • 右边取: right(x,n),x字符串,n取几位
    select "helloworld",left("helloworld",5) lef,right("helloworld",5) rig;
    
    在这里插入图片描述

2.7 取中间的字符串

  • substring(x,n,m)
    • x字符串,n从第几位开始取,m取几位
    select "hello world yes", substring("hello world yes",7,5), substring("hello world yes",7);
    
    在这里插入图片描述

2.8 返回字符串的位置

  • locate(子字符串,字符串)
  • position(子字符串 in 字符串)
    select locate("world","hello world yes"),position("world" in "hello world yes");
    
    在这里插入图片描述

2.9 字符串的替换

  • replace(字符串,要替换的内容,替换的内容)

    select replace("hello world yes","world","世界");
    

    在这里插入图片描述

  • insert(字符串,替换的开始位数,取机位,替换的字符串)

    select insert("hello world yes",7,5,"世界呀");
    

    在这里插入图片描述

2.10 比较字符串

  • 比较两个字符串是不是一样,1代表不一样,0代表一样
  • strcmp(s1,s2)
    select strcmp('hello','Hello'),strcmp('hello','hello'),strcmp('hello ','Hello');
    
    在这里插入图片描述

2.11 重复字符串

  • repeat(x,n),x字符串,n重复的次数
    select repeat('hello',3);
    
    在这里插入图片描述

3. 第三类:时间日期函数

3.1 获取当前的日期

  • current_date()
  • 注意:current_date可以简写为curdate
    select current_date(),curdate();
    
    在这里插入图片描述

3.2 获取当前的时间

  • current_time()
  • 注意:current_time可以简写为curtime
    select current_time(),curtime();
    
    在这里插入图片描述

3.3 获取当前的日期时间

  • now()
  • 注意:now可以写为sysdate()
    select now(),sysdate();
    
    在这里插入图片描述

3.4 获取unix时间戳

  • 时间戳就是从1970-1-1开始到现在过了多少秒
    select unix_timestamp(now()),format(unix_timestamp(now()),0);
    
    在这里插入图片描述

3.5 时间戳转为日期

  • from_unixtime(x),x时间戳
    select from_unixtime(unix_timestamp(now()));
    
    在这里插入图片描述

3.6 获取年月日时分秒季度星期

  • 年:year(date)

    select now(),year(now())
    

    在这里插入图片描述

  • 月:

    • month(date)
    • monthname(date),获取月的英文名
      select now(),month(now()),monthname(now())
      
      在这里插入图片描述
  • 星期:

    • weekday(date),星期一:0…星期日:6
    • dayofweek(date),星期一:0…星期日:1
    • dayname(date),获取星期的英文名
      select weekday(now()),dayofweek(now()),dayname(now())
      
      在这里插入图片描述
  • 获取当前的周数,一般一年有53周

    • week(date),weekofyear(date)
      select now(),week(now()),weekofyear(now())
      
      在这里插入图片描述
  • 获取当前过了多少天

    • dayofyear(date)
      select now(),dayofyear(now())
      
      在这里插入图片描述
  • 获取本月的天

    • day(date),dayofmonth(date)
      select now(),day(now()),dayofmonth(now())
      
      在这里插入图片描述
  • 获取分钟:minute(date)

  • 获取小时:hour(date)

  • 获取季度:quarter(date)

  • 获取秒:second(date)

    select now(),minute(now()) ,hour(now()),quarter(now()),second(now())
    

    在这里插入图片描述

3.7 时间转换为秒

  • time_to_sec()
    select time_to_sec('5:28:33');
    
    在这里插入图片描述

3.8 秒转换为时间

  • sec_to_time()
    select sec_to_time(19713);
    
    在这里插入图片描述

3.9 时间日期的加减

  • 加日期:

    • date_add(date,interval 数字【year/month/hour/minute/second…】)

      • interval 数字 [day_hour/day_minute/day_second/year_month/year_second]
    • adddate(date,interval 数字 【year/month/hour/…】)

      select date_add(now(),interval 1 day),adddate(now(),interval 1 day);
      

      在这里插入图片描述

      -- 加一天五小时33分钟23秒
      select date_add(now(),interval 1 day),date_add(now(),interval "1 5:33:23" day_second);
      

      在这里插入图片描述

  • 减日期:

    • date_sub(date,interval 数字 【year/month/hour/minute/second…】)
      • interval 数字[day_hour/day_minute/day_second/year_month/year_second]
      select now(), date_sub(now(),interval 1 day);
      
      在这里插入图片描述
  • 时间加减

    • addtime(),time_add()
    • subtime(),time_sub()
  • inerval 关键词

    select '2024-7-18' + interval 1 day,'2024-7-18' + interval '2 2' day_hour,'2024-7-18' - interval '2 2' day_hour
    

    在这里插入图片描述

3.10 两个日期相减

  • datediff(日期1,日期2),得到的是天数
    select datediff('2024-1-30','2024-1-27 7:23:34');
    
    在这里插入图片描述

3.11 日期格式化

  • date_format(date,格式化形式)
    select date_format(now(),"%Y%m");
    
    在这里插入图片描述

4. 第四类:聚类函数

函数含义
min()最小值
max()最大值
avg()平均值
sum()求和
count()计数
select c_id,max(s_score) as max_score,min(s_score) as min_score,avg(s_score) as avg_score,sum(s_score) as sum_score,count(s_score) as count_score
from score
group byc_id

在这里插入图片描述

5. 第五类:逻辑判断函数

5.1. if

  • if(判断,判断成立返回的值,不成立返回的值)
    SELECTa.*,if(a.s_score>=60,"及格","不及格") 
    FROMscore a
    在这里插入图片描述

5.2 ifnull

  • ifnull(x,y),x为空时返回y,x不为空返回x本身
  • 例1
    select ifnull(null,100);
    
    在这里插入图片描述
  • 例二
    SELECTa.*,ifnull(b.s_score,0) 
    FROMstudent a
    LEFT JOINscore b
    ONa.s_id=b.s_id;
    
    在这里插入图片描述

5.3 case when

  • 语法格式
    case when 判断 then 判断成立返回的值
    when 判断 then 判断成立返回的值
    when 判断 then 判断成立返回的值
    when 判断 then 判断成立返回的值
    ...
    else 判断成立返回的值
    end
    
  • 例子
    SELECTa.*,case when a.s_score<60 then "不及格"when a.s_score<80 then "中等"ELSE "优秀"end as 成绩分组
    FROMscore a;	
    

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

从PyTorch官方的一篇教程说开去(3.1 - GD 梯度下降法)

在openAI以前&#xff0c;我们所讨论的“人工智能”基本上都是“人工智障”&#xff0c;即时在某些方面表现得非常出色&#xff0c;击败了世界冠军&#xff0c;但最多算个某领域的“专才”而不是“通才”。 那么这些“智障”程序们&#xff0c;究竟是靠什么才能做到“专才”呢…

【总结】nginx源码编译安装报错./configure: error: SSL modules require the OpenSSL library.

问题现象 源码编译安装nginx时&#xff0c;执行./configure …… --with-http_ssl_module 命令安装https模块&#xff0c;需要用到openssl&#xff0c;由于机器缺少openssl库&#xff0c;报如下错误。 …… checking for openat(), fstatat() ... found checking for getaddr…

Flink HA

目录 Flink HA集群规划 环境变量配置 masters配置 flink-conf.yaml配置 测试 Flink HA集群规划 FLink HA集群规划如下&#xff1a; IP地址主机名称Flink角色ZooKeeper角色192.168.128.111bigdata111masterQuorumPeerMain192.168.128.112bigdata112worker、masterQuorumPee…

MySQL(5)表的查询

目录 1.表的查询 1.表的查询: 1.1创建表: 语法: create table 表名( 字段 类型 约束, 字段 类型 约束, ... 字段 类型 约束 ); 1.2 单行数据全行插入: &#x1f330; 表的字段都插入数据: insert into student values(100, 1000, 唐三藏, null); 1.3 多行数据 指定列插入:…

Go网络编程-RPC程序设计

gRPC 通信 RPC 介绍 RPC, Remote Procedure Call&#xff0c;远程过程调用。与 HTTP 一致&#xff0c;也是应用层协议。该协议的目标是实现&#xff1a;调用远程过程&#xff08;方法、函数&#xff09;就如调用本地方法一致。 如图所示&#xff1a; 说明&#xff1a; Servi…

STM32智能安防系统教程

目录 引言环境准备智能安防系统基础代码实现&#xff1a;实现智能安防系统 4.1 数据采集模块 4.2 数据处理与控制模块 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景&#xff1a;家庭与企业安防管理问题解决方案与优化收尾与总结 1. 引言 智能安防系统通过STM32…

webrtc QOS方法十三(视频渲染平滑)

一、背景介绍 视频渲染时间的确定需要考虑三方面的因素&#xff1a;网络抖动、网络延时、音视频同步 网络抖动&#xff1a;视频帧在网络上传输&#xff0c;会受到网络抖动的影响&#xff0c;不能收到立刻播放&#xff0c;需要进行适当的平滑 网络延时&#xff1a;一些报文在…

鱼眼相机变普通相机,利用Transform进行球面变换

Abstract 高分辨率广角鱼眼图像在自动驾驶等机器人应用中变得越来越重要。然而&#xff0c;使用普通的卷积神经网络或视觉变换器处理这类数据时会遇到问题&#xff0c;因为在将其投影到平面上的矩形网格时会引入投影和失真损失。为了解决这个问题&#xff0c;我们引入了HEAL-S…

雷达组网拼图3.0数据掌握和python解析处理

废话不多说&#xff0c;先展示雷达图 以反射率为例&#xff1a; 核对数据格式 Z_RADA_C_BABJ_20240705043615_P_DOR_ACHN_CREF_20240705_043000.bin数据分析认识 1. 组网产品分类&#xff1a;组网产品包括组网混合扫描反射率&#xff08;HSR&#xff09;&#xff0c;组网组…

Qt-事件与信号

事件和信号的区别在于&#xff0c;事件通常是由窗口系统或应用程序产生的&#xff0c;信号则是Qt定义或用户自定义的。Qt为界面组件定义的信号往往通常是对事件的封装&#xff0c;如QPushButton的clicked()信号可以看做对QEvent::MouseButtonRelease类事件的封装。 在使用界面组…

Android Studio - adb.exe已停止运作的解决方案

adb.exe 是Android Debug Bridge 的缩写&#xff0c;它是Android SDK 中的一个调试工具&#xff0c;允许开发者通过命令行界面与设备进行交互&#xff0c;执行各种操作&#xff0c;如运行设备的shell、管理模拟器或设备的端口映射、在计算机和设备之间上传/下载文件、将本地APK…

鸿蒙语言基础类库:【@system.mediaquery (媒体查询)】

媒体查询 说明&#xff1a; 从API Version 7 开始&#xff0c;该接口不再维护&#xff0c;推荐使用新接口[ohos.mediaquery]。本模块首批接口从API version 3开始支持。后续版本的新增接口&#xff0c;采用上角标单独标记接口的起始版本。 导入模块 import mediaquery from sy…

PySide在Qt Designer中使用QTableView 显示表格数据

在 PySide6 中&#xff0c;可以使用 Qt Model View 架构中的 QTableView 部件来显示和编辑表格数据。 1、创建ui文件 在Qt Designer中新建QMainWindow&#xff0c;命名为csvShow.ui。QMainWindow上有两个部件&#xff1a;tableview和btn_exit。 2、使用pyuic工具将ui文件转换为…

使用IDEA编写lua脚本并运行

下载lua https://github.com/rjpcomputing/luaforwindows/releases 是否创建桌面快捷方式&#xff1a;我们的目标是使用IDEA编写lua脚本&#xff0c;所以不需要勾选。后面需要的话&#xff0c;可以到安装目录下手动创建快捷方式 环境变量自动配置 安装后会自动配置好环境变量…

从零开始读RocketMq源码(五)Consumer消费Message流程解析

目录 前言 准备 拉取服务和重平衡服务启动 初识PullRequest 重平衡服务 对重平衡资源进行排序 MessageQueue消息队列集合来源 Consumer消费者集合数据来源 确实分配资源策略 执行分配策略 初始化ProcessQueue 初始化PullRequest 内存队列填充PullRequest 消息拉取…

TikTok用户必看:代理IP的优缺点深度剖析

在咱们这庞大的网络世界里&#xff0c;TikTok就像是夜空中最亮的星星&#xff0c;吸引着全世界的人们。它不仅仅是个让大家开心的地方&#xff0c;更是个能让不同地方的人互相了解、分享生活的神奇平台。但你有没有想过&#xff0c;要是能让这个连接更顺畅&#xff0c;让TikTok…

h5点击电话号跳转手机拨号

需要使用到h5的 <a>标签 我们首先在<head>标签中添加代码 <meta name"format-detection" content"telephoneyes"/>然后再想要的位置添加代码 <a href"tel:10086"> 点击拨打&#xff1a;10086 </a> 这样功能就实现…

【CSS in Depth 2 精译_019】3.2 CSS 的盒模型

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第一章 层叠、优先级与继承&#xff08;已完结&#xff09; 1.1 层叠1.2 继承1.3 特殊值1.4 简写属性1.5 CSS 渐进式增强技术1.6 本章小结 第二章 相对单位&#xff08;已完结&#xff09; 2.1 相对…

LLaMA 数据集

LLaMA的训练数据集来源多样&#xff0c;涵盖了多个不同的数据集和预处理步骤。以下是详细的描述&#xff1a; 公开数据来源和预处理 CommonCrawl [67%]&#xff1a; 使用CCNet管道&#xff08;Wenzek等人&#xff0c;2020年&#xff09;对2017年至2020年间的五个CommonCrawl转…

Vue3 + uni-app 微信小程序:仿知乎日报详情页设计及实现

引言 在移动互联网时代&#xff0c;信息的获取变得越来越便捷&#xff0c;而知乎日报作为一款高质量内容聚合平台&#xff0c;深受广大用户喜爱。本文将详细介绍如何利用Vue 3框架结合微信小程序的特性&#xff0c;设计并实现一个功能完备、界面美观的知乎日报详情页。我们将从…