【数据库】函数处理(文本处理函数、日期和时间处理函数、数值处理函数)
函数处理数据
- 算术运算
- 函数
- 文本处理函数
- 日期和时间处理函数
- 数值处理函数
算术运算
| 操作符 | 说明 |
|---|---|
| + | 加 |
| - | 减 |
| * | 乘 |
| / | 除 |
e . g . e.g. e.g. 列出 Orders 表中所有每项物品的 id,数量 quantity,单价 item_price,总价 expanded_price(数量 * 单价);
SELECT prod_id,quantity,item_price,quantity*item_price AS expanded_price
FROM Orders
函数
在之前数据库相关的博文中,有介绍到几个基本函数:
| 函数 | 说明 | 举例 |
|---|---|---|
| concat(a,b) | 拼接a与b字段 | concat(name, mobile) AS basis_info |
| rtrim() | 去除字段右侧空格 | rtrim(name) |
| curdate() | 返回当前日期 | curdate() AS curr_date |
在进行后续内容阐述之前,读者必须先知道一个注意事项:
- 不同的 DBMS 对相同的函数效果,有着不同的函数语句;但是随着版本的更新迭代,很多 DBMS 不断更新融合,会产生一种 DBMS 有几个函数语句可以实现相同的函数效果;
- 总而言之,读者在已知自己需要什么效果的前提下,对不同的函数语句多加尝试,即可知道自己本地版本下,到底哪个语句可用哪个不可用。
文本处理函数
e . g . e.g. e.g. 字段内容全部大写;
-- UPPER() 函数使得文本内容全部大写
SELECT UPPER(name) as cust_name
FROM Customers
表1:常用文本处理函数一览
| 函数 | 说明 |
|---|---|
| LEFT() | 返回字符串左侧的字符 |
| LENGTH() 或 LEN() | 返回字符串的长度 |
| LOWER() | 将字符串转换为小写 |
| LTRIM() | 去掉字符串左侧的空格 |
| RIGHT() | 返回字符串右边的 |
| RTRIM() | 去掉字符串右侧的空格 |
| SUBSTR() 或 SUBSTRING() | 提取字符串的部分 |
| SOUNDEX() | 返回字符串的SOUNDEX值 |
| UPPER() | 将字符串转换为大写 |
SOUNDEX() 函数:
e . g . e.g. e.g. 找出数据库中名字类似 “Michael Green” 的信息;
SELECT cust_name
FROM Customers
WHERE SOUNDEX(cust_name) = SOUNDEX('Michael Green');
-- 结果输出为:
cust_name
---------
Michael Green
Michelle Green
Michaeal Greem
上述结果的三者读音类似,所以 SOUNDEX() 函数将其筛选出来。
日期和时间处理函数
DATEPART() 函数:
e . g . e.g. e.g. 筛选出2020年所有订单;
SELECT *
FROM Orders
WHERE DATEPART(yy, order_date)=2020;
PostgreSQL 版本
SELECT *
FROM Orders
WHERE DATE_PART('year', order_date)=2020;
Oracle 版本
SELECT *
FROM Orders
WHERE EXTRACT(year FROM order_date)=2020;
MySQL/MariaDB 版本
SELECT *
FROM Orders
WHERE YEAR(order_date)=2020;
SQLite 版本
SELECT *
FROM Orders
WHERE strftime('%Y', order_date)='2020';
数值处理函数
表2:常用数值处理函数一览
| 函数 | 说明 |
|---|---|
| PI() | 返回圆周率 π \pi π 的值 |
| ABS() | 返回绝对值 |
| SIN() | 返回角度的正弦 |
| COS() | 返回角度的余弦 |
| TAN() | 返回角度的正切 |
| EXP() | 返回指数值 |
| SQRT() | 返回平方根 |
–
以上
相关文章:
【数据库】函数处理(文本处理函数、日期和时间处理函数、数值处理函数)
函数处理数据 算术运算函数文本处理函数日期和时间处理函数数值处理函数 算术运算 操作符说明加-减*乘/除 e . g . e.g. e.g. 列出 Orders 表中所有每项物品的 id,数量 quantity,单价 item_price,总价 expanded_price(数量 * 单价…...
GEE案例——一个完整的火灾监测案例dNBR差异化归一化烧毁指数
差异化归一化烧毁指数 dNBR是"差异化归一化烧毁指数"的缩写。它是一种用于评估卫星图像中烧毁区域严重程度的遥感指数。dNBR值通过将火灾前的归一化烧毁指数(NBR)减去火灾后的NBR来计算得出。该指数常用于野火监测和评估。 dNBR(差异化归一化烧毁指数)是一种用…...
计算机算法分析与设计(20)---回溯法(0-1背包问题)
文章目录 1. 题目描述2. 算法思路3. 例题分析4. 代码编写 1. 题目描述 对于给定的 n n n 个物品,第 i i i 个物品的重量为 W i W_i Wi,价值为 V i V_i Vi,对于一个最多能装重量 c c c 的背包,应该如何选择放入包中的物品…...
什么是IO多路复用?Redis中对于IO多路复用的应用?
IO多路复用是一种高效的IO处理方式,它允许一个进程同时监控多个文件描述符(包括套接字、管道等),并在有数据可读或可写时进行相应的处理。这种机制可以大大提高系统的并发处理能力,减少资源的占用和浪费。 在Redis中&…...
NanoPC-T4 RK3399:DTS之io-domain,FAN
前言: 之后所有改动均是基于rk3399-evb.dts修改以满足NanoPC-T4功能正常。 NanoPC-T4开发板上有一片散热风扇,本章将讲述使风扇正常工作起来的多种方法。 一:硬件分析 GPIO4_C6/PWM1:实际控制风扇引脚,GPIO与PWM复用 输入高电平1:FAN2pin电路导通,风扇转动 输入低电…...
vue3+vite+ts项目使用jQuery
1、安装jQuery npm install --save jquery 2、安装声明文件 npm install --save types/jquery 3、在需要的文件中引入 import $ from jquery...
一起学数据结构(10)——排序
从本文开始,通过若干篇文章展开对于数据结构中——排序的介绍。 1. 排序的概念: 将一堆杂乱无章的数据,通过一定的规律顺序排列起来。即将一个无序序列排列成一个有序序(由小到大或者由大到小)的运算。 在数据的排序中…...
php 数组基础/练习
数组 练习在最后 数组概述 概述与定义 数组中存储键值对 数组实际上是一个有序映射 key-value,可将其当成真正的数组、列表(向量)、散列表、字典、集合、栈、队列等 数组中的元素可以是任意类型的数据对象(可以嵌套数组&#…...
Redbook Chapter 7: Query Optimization翻译批注
首先说明一下redbook上的几篇文章是做什么的。这几篇文章是通过几位作者对不同方面的论文进行阅读和筛选后,挑出其中具备代表性或者权威的论文来做分析,为读者提供阅读指导和建议,同时,也是对某个方面的论文进行高度的总结&#x…...
【分布式】大模型分布式训练入门与实践 - 04
大模型分布式训练 数据并行-Distributed Data Parallel1.1 背景1.2 PyTorch DDP1) DDP训练流程2)DistributedSampler3)DataLoader: Parallelizing data loading4)Data-parallel(DP)5)DDP原理解析…...
欧拉图相关的生成与计数问题探究
最近学了一波国家集训队2018论文的最后一个专题。顺便带上了一些我的注解。 先放一波这个论文 1.基本概念 欧拉图问题是图论中的一类特殊的问题。在本文的介绍过程中,我们将会使用一些图 论术语。为了使本文叙述准确,本节将给出一些术语的定义。 定义…...
CSS3属性详解(一)文本 盒模型中的 box-ssize 属性 处理兼容性问题:私有前缀 边框 背景属性 渐变 前端开发入门笔记(七)
CSS3是用于为HTML文档添加样式和布局的最新版本的层叠样式表(Cascading Style Sheets)。下面是一些常用的CSS3属性及其详细解释: border-radius:设置元素的边框圆角的半径。可以使用四个值设置四个不同的圆角半径,也可…...
小程序:如何合理规划分包使主包不超过2M
背景 做过小程序项目的同学应该都有这样的经历,项目做着做着,突然发现代码包的大小超过了 2M,小程序无法提审,然后痛苦的删文件改代码来减少包大小。 虽然我们也知道小程序给我们提供了分包的功能可以减少主包的大小,…...
迭代器的封装与反向迭代器
一、反向迭代器 在list模拟实现的过程中,第一次接触了迭代器的封装,将list的指针封装成了一个新的类型,并且以迭代器的基本功能对其进行了运算符重载 反向迭代器是对正向迭代器的封装,并且体现了泛型编程的思想,任意…...
PHP项目学习笔记-萤火商城https://www.yiovo.com/doc
萤火商城学习笔记 注意事项关于建表增加页面流程前台页面的数据列表数据下拉列表的数据 关于时间的处理前台界面数据处理 多年没有碰过php代码了,这个项目不错,想好好学习下,持续更新 注意事项 打开APP_DEBUG有些时候改了前台页面后&#x…...
我国有多少个港口?
港口是什么? 港口是海洋运输中不可或缺的重要设施之一,是连接陆路和水路运输的重要节点。港口通常是指位于沿海地区的水陆交通枢纽,是船舶停靠、装卸货物、储存物资和维修船只的场所。港口一般由码头、泊位、仓库、货场、客运站等设施组成&a…...
uniapp实现登录组件之外区域置灰并引导登录
实现需求 每个页面需要根据用户是否登录决定是否显示登陆组件,登录组件半屏底部显示,登录组件之外区域置灰,功能按钮点击之后引导提示登录.页面效果如下: 实现思路说明 设置登录组件背景颜色为灰色,将页面分成登录区域(底部)和非登陆区域(上面灰色显示部分), 置灰区域添加…...
抄表系统是如何抄到电表水表的数据的?
抄表系统是一种利用无线通信技术,实现远程读取电表水表数据的系统。抄表系统主要由三部分组成:电表水表、集中器和后台管理平台。接下来,小编来为大家详细的介绍下抄表系统是如何抄到电表水表的数据的,一起来看下吧! 电表水表是抄…...
Qt之自定义事件QEvent
在Qt中,自定义事件的步骤大概如下: 1.创建自定义事件,自定义事件需要继承QEvent 2.使用QEvent::registerEventType()注册自定义事件类型,事件的类型需要在 QEvent::User 和 QEvent::MaxUser 范围之间,在QEvent::User之前是预留给系统的事件 3.使用sendEvent() 和 postEv…...
项目管理week5——交个作业
...
WarcraftHelper终极指南:3步解决魔兽争霸3现代系统兼容性问题
WarcraftHelper终极指南:3步解决魔兽争霸3现代系统兼容性问题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper WarcraftHelper是一款专门为…...
WebPlotDigitizer:高效精准图表数据提取的智能化解决方案
WebPlotDigitizer:高效精准图表数据提取的智能化解决方案 【免费下载链接】WebPlotDigitizer Computer vision assisted tool to extract numerical data from plot images. 项目地址: https://gitcode.com/gh_mirrors/we/WebPlotDigitizer 副标题࿱…...
VideoAgentTrek-ScreenFilter模型压缩与量化教程:在边缘设备上实现轻量部署
VideoAgentTrek-ScreenFilter模型压缩与量化教程:在边缘设备上实现轻量部署 想让一个原本需要强大GPU才能流畅运行的视频分析模型,在树莓派或者Jetson Nano这类小巧的边缘设备上也能跑起来吗?这听起来像是个不可能的任务,但通过模…...
2026年3月Github开源项目精选Top10
📅统计周期:2026-02-28 ~ 2026-03-29 🌋数据来源:www.ffgithub.com 📚数据更新:2026-03-29 Top1. 666ghj/MiroFish 🔺 总星标数量:43670⭐🔺 周增长数量:63…...
Pixel Language Portal实操手册:自定义天空蓝主题(#e3f2fd)与金币黄按钮配置
Pixel Language Portal实操手册:自定义天空蓝主题(#e3f2fd)与金币黄按钮配置 1. 工具概览 **像素语言跨维传送门(Pixel Language Portal)**是一款基于腾讯Hunyuan-MT-7B核心引擎构建的创新翻译工具。与传统翻译软件不同,它将语言转换过程设计成一场16-…...
亚马逊Buy for Me代购服务全流程实测:从下单到收货的完整避坑手册
亚马逊Buy for Me代购服务实战解析:从入门到精通的完整指南 跨境购物早已不是新鲜事,但每次看到海外电商平台上那些国内买不到的好物,心里总免不了痒痒的。亚马逊最新推出的Buy for Me服务,或许正是解决这一痛点的钥匙。作为一名长…...
你还在用for循环清洗CSV?Polars 2.0的scan_csv()+expression DSL已支持自动列式推断与零拷贝转换——立即升级避免被淘汰
第一章:Polars 2.0大规模数据清洗的核心范式变革Polars 2.0 不再将数据清洗视为一系列离散的、命令式的转换操作,而是以“惰性执行图列式语义优先”为基石,重构整个清洗生命周期。其核心变革体现在计算模型、内存管理与API设计三重维度的协同…...
VideoAgentTrek-ScreenFilter在Dify平台上的低代码应用构建
VideoAgentTrek-ScreenFilter在Dify平台上的低代码应用构建 1. 引言 想象一下,你手头有一堆视频素材,可能是会议录屏、产品演示,或者是一些随手拍的教程。这些视频里,往往夹杂着大量无关的桌面背景、浏览器标签页,甚…...
YOLO-V5实战案例:用公开数据集训练你的第一个检测模型
YOLO-V5实战案例:用公开数据集训练你的第一个检测模型 1. 为什么选择YOLO-V5 在计算机视觉领域,目标检测技术已经广泛应用于安防监控、自动驾驶、工业质检等场景。YOLO(You Only Look Once)系列模型因其出色的速度和精度平衡&am…...
Cesium快速入门到精通系列教程八:Primitive和Entity的相似点与不同点
在 Cesium1.95 中,Primitive和Entity是两种创建和管理三维对象的核心方式,它们在功能上有相似之处,但设计目标和使用场景差异明显。以下是详细对比: 一、相似点 1、基础渲染目标 两者均用于在 3D 场景中绘制图形(点、线、面、模型等)。 最终都会通过底层 WebGL…...
