总结SQL相对常用的几个字符函数
目录
字符的截取
substr()
trim()、ltrim()、rtrim()
字符串的拼接
||、+
字符的大小写转换
upper('column_name'):大写
lower('column_name'):小写
字符替换
replace()
搜索字符
instr(column_name, 'substring_to_find',start,n_appearence)
charindex('substring_to_find', column_name[,START])
通配符
小例子
rowid
字符的截取
substr()
在 sqlserver 中是 substring,不过参数一样,但是不能缺少长度,也就不会默认到末尾
select substr('str',start[,length]) from xx
从 start 开始,截取长度为 lenth 的字符,其中空格长度为1
trim()、ltrim()、rtrim()
SELECT TRIM([ '目标str' from] '源str') FROM xx
从源 str 两边、左边、右边开始截取目标 str,缺省目标字符串时截取空格

字符串的拼接
||、+
oracle 中可连接多个字符串,SqlServer 里可以用 + 进行连接

(SqlServer)

(Oracle)
除此之外,Oracle 也可用 concat ('str1','str2') 函数拼接,这种方法只能拼接两个字符串
字符的大小写转换
upper('column_name'):大写
lower('column_name'):小写
select * FROM emp;

select lower(job) FROM emp;

字符替换
replace()
将源字符串中的某些字符替换,格式:
select replace('string_expression', string_pattern, string_replacement) from xxx
- string_expression:要进行替换的字符串,如某一列或某个字串
- string_pattern:要被替换的 string
- string_replacement:所进行替换的 string
搜索字符
instr(column_name, 'substring_to_find',start,n_appearence)
- column_name:列名,可以为字符串
- substring_to_find:需要搜索的字符串
- start:搜索的起始位置
- n_appearence:第n次出现
select instr('abc-def-abc-xyz','-'),instr('abc-def-abc-xyz','-',5),instr('abc-def-abc-xyz','-',5,2),instr('abc-def-abc-xyz','-',-1)
from dual;
该函数是在 Oracle 中可以使用的

比如:第三列 str 中第五位开始查找字符 '-' 第 2 次出现的位置,未找到将返回0,第一个字符下标记为1
charindex('substring_to_find', column_name[,START])
SqlServer 中可用该方法实现同样效果,但其参数位置不同,且没法限定目标字符出现的次数,最多也只有三个参数
通配符
是与 LIKE 一起使用进行模糊搜索字符的符号
%、_:匹配多个或一个字符
SELECT * FROM EMP

SELECT * FROM EMP WHERE JOB LIKE 'M%' [escape 特殊字符]
--注意字符的小写

后面的 escape:
- 用法一:当字符串本身含有 % 或 _ 时,避免其当做通配符
- 用法二:当需要剔除某字符(如每个数据都有*号,直接匹配会每个数据都返回),那我可以escape '*' 忽略掉这个字符
此外,对字符串出现 % 或 _ 也可以用反斜杠 \ 对其忽略
小例子
对 oracle 中自带的 EMP 表进行字符处理
SELECT emp.*,rowid FROM EMP;

摘出需要进行替换的字母
SELECT emp.*,substr(rowid,-5) FROM EMP;

进行替换
SELECT emp.*,replace(rowid,substr(rowid,-5),'*****') FROM EMP;

rowid
这个 rowid 是在 oracle 中记录每一行数据在插入数据库时分配的物理地址(是唯一的字符串)
相关文章:
总结SQL相对常用的几个字符函数
目录 字符的截取 substr() trim()、ltrim()、rtrim() 字符串的拼接 ||、 字符的大小写转换 upper(column_name):大写 lower(column_name):小写 字符替换 replace() 搜索字符 instr(column_name, substring_to_find,start,n_appearence) charindex(substring_to_fi…...
云计算笔记
RAID的组合方式 RAID0:多个硬盘同时工作,可提供性能,无冗余机制 RAID1:数据保存多份,提供冗余机制,性能受到影响 RAID3:存在数据盘和单独校验盘,数据写入 至数据盘后需要运算且将…...
网络安全学习路线-超详细
零基础小白,到就业!入门到入土的网安学习路线! 在各大平台搜的网安学习路线都太粗略了。。。。看不下去了! 建议的学习顺序: 一、网络安全学习普法(心里有个数,要进去坐几年!&#x…...
【多模态检索】Coarse-to-Fine Visual Representation
快手文本视频多模态检索论文 论文:Towards Efficient and Effective Text-to-Video Retrieval with Coarse-to-Fine Visual Representation Learning 链接:https://arxiv.org/abs/2401.00701 摘要 近些年,基于CLIP的text-to-video检索方法…...
VRRP——虚拟路由冗余协议
什么是VRRP 虚拟路由冗余协议VRRP(Virtual Router Redundancy Protocol)是一种用于提高网络可靠性的容错协议。 通过VRRP,可以在主机的下一跳设备出现故障时,及时将业务切换到备份设备,从而保障网络通信的连续性和可…...
隧道应急广播应该如何搭建?
隧道应急广播系统的搭建需遵循以下关键步骤,确保在紧急情况下能够迅速、准确地传达信息,保障人员安全: 1. 需求分析与规划设计: 明确目标:确定广播系统覆盖范围(如隧道全长、出入口、避难所等关键位置&…...
OpenHarmony实战开发-Worker子线程中解压文件。
介绍 本示例介绍在Worker 子线程使用ohos.zlib 提供的zlib.decompressfile接口对沙箱目录中的压缩文件进行解压操作,解压成功后将解压路径返回主线程,获取解压文件列表。 效果图预览 使用说明 1.点击解压按钮,解压test.zip文件,…...
中国科学院大学学位论文LaTeX模版
Word排版太麻烦了,公式也不好敲,推荐用LaTeX模版,全自动 官方模版下载位置:国科大sep系统 → \rightarrow → 培养指导 → \rightarrow → 论文 → \rightarrow → 论文格式检测 → \rightarrow → 撰写模板下载百度云&#…...
秘塔和Kimi AI在资料查询和学习中的使用对比
一、引言 最近老猿在网上查资料时,基本上都使用Kimi AI进行查询,发现其查询资料后总结到位,知识点的准确度较高。今天早上收到一个消息,说新推出的秘塔AI比Kimi更新进,老猿利用在学习的《统计知识学习》简单对比试用了…...
apk反编译
APK文件可以通过多个工具反编译,以便查看包含在其中的Java源文件。但是,需要注意的是,通常通过反编译得到的不是原始的Java源代码,而是反编译后的代码,这意味着它可能已经被转换成了类似于原始Java代码的形式ÿ…...
修改百度百科的词条的方法
百度百科作为国内最大的百科全书网站之一,是广大网民获取各类知识的重要途径之一。所以,如何修改百度百科的词条成为了很多人关心的话题。本文将介绍修改百度百科的方法,并提供一些技巧和注意事项。 注册百度账号 首先,进入百度百…...
更改ip地址的几种方式有哪些
在数字化时代,IP地址作为网络设备的标识,对于我们在网络世界中的活动至关重要。然而,出于多种原因,如保护隐私、访问特定网站或进行网络测试,我们可能需要更改IP地址。虎观代理将详细介绍IP地址的更改方法与步骤&#…...
Flink学习(六)-容错处理
前言 Flink 是通过状态快照实现容错处理 一、State Backends 由 Flink 管理的 keyed state 是一种分片的键/值存储,每个 keyed state 的工作副本都保存在负责该键的 taskmanager 本地中。 一种基于 RocksDB 内嵌 key/value 存储将其工作状态保存在磁盘上&#x…...
设计模式(020)行为型之备忘录模式
备忘录模式是一种行为型设计模式,用于在不破坏封装性的前提下捕获一个对象的内部状态,并在该对象之外保存这个状态,以便之后可以将该对象恢复到之前的状态。这种模式通常用于需要记录对象状态历史、撤销操作或实现“回到过去”功能的场景。 在…...
Android 系统锁屏息屏休眠时Handler CountDownTimer计时器停止运行问题解决
1.前言 在进行app开发的过程中,在进行某些倒计时的功能项目开发中,会遇到在锁屏息屏休眠一段时间的情况下, 在唤醒屏幕的情况下发现倒计时已经停止了,这是因为在系统处于休眠的状态下cpu也停止了工作,所以 handler和countdowntimer倒计时也停止了工作,接下来就来看怎么样…...
Java中如何提取视频文件的缩略图
在Java中,可以使用FFmpeg库来提取视频文件的缩略图。以下是一种使用FFmpeg的方法来提取视频缩略图的示例代码: import java.io.File; import java.io.IOException;public class VideoThumbnailExtractor {public static void main(String[] args) {Stri…...
总结 HashTable, HashMap, ConcurrentHashMap 之间的区别
前言 HashMap 本身不是线程安全的. 在多线程环境下使用哈希表可以使用: Hashtable(不推荐使用)ConcurrentHashMap(推荐使用) HashMap HashMap数据结构 根本: 数组 链表(jdk1.7)/数组链表红黑…...
《剑指 Offer》专项突破版 - 面试题 107 : 矩阵中的距离(C++ 实现)
题目链接:矩阵中的距离 题目: 输入一个由 0、1 组成的矩阵 M,请输出一个大小相同的矩阵 D,矩阵 D 中的每个格子是矩阵 M 中对应格子离最近的 0 的距离。水平或竖直方向相邻的两个格子的距离为 1。假设矩阵 M 中至少有一个 0。 …...
揭秘智慧礼品背后的故事
如若不是从事技术行业,在罗列礼品清单时,可能不会想到 “数据”,但幸运的是,我们想到了。如何将AI技术应用到当季一些最受青睐的产品中去,训练数据是这一智能技术的背后动力。很多电子设备或名称中带有“智能”一词的设…...
NVM的安装与配置
目录 一、简介二、下载2.1、windows环境下载地址2.2、安装 三、配置3.1、查看可安装版本3.2、安装版本3.3、使用和切换版本3.4、模块配置 四、其他4.1、全局安装pnpm4.2、常用nvm命令 一、简介 NVM,全称为Node Version Manager,是一个流行的命令行工具&a…...
如何高效使用开源视频字幕生成工具:5分钟快速入门指南
如何高效使用开源视频字幕生成工具:5分钟快速入门指南 【免费下载链接】video-srt-windows 这是一个可以识别视频语音自动生成字幕SRT文件的开源 Windows-GUI 软件工具。 项目地址: https://gitcode.com/gh_mirrors/vi/video-srt-windows 在当今视频内容爆炸…...
从“Could not resolve hostname”到成功Clone:一个OpenHarmony开发者的踩坑实录与效率工具推荐
从“Could not resolve hostname”到成功Clone:一个OpenHarmony开发者的踩坑实录与效率工具推荐 作为一名长期深耕OpenHarmony生态的开发者,我清楚地记得第一次尝试为开源项目贡献代码时的挫败感——当我在终端输入git clone命令后,屏幕上赫然…...
深度解析:ComfyUI-ControlNet-Aux项目中DepthAnything节点参数错误的技术根源与修复方案
深度解析:ComfyUI-ControlNet-Aux项目中DepthAnything节点参数错误的技术根源与修复方案 【免费下载链接】comfyui_controlnet_aux ComfyUIs ControlNet Auxiliary Preprocessors 项目地址: https://gitcode.com/gh_mirrors/co/comfyui_controlnet_aux 在AI图…...
告别Unity/UE4的臃肿:用Love2D和VSCode开启你的独立游戏开发之旅(附详细配置)
告别Unity/UE4的臃肿:用Love2D和VSCode开启你的独立游戏开发之旅(附详细配置) 当你在Unity中等待着色器编译完成,或是被UE4的30GB安装包吓退时,是否想过:独立游戏开发一定要这么沉重吗?三年前&a…...
收藏!小白程序员逆袭大厂:4阶段系统化大模型开发学习路线图
本文针对想做但不知如何入手大模型开发的读者,提供了4阶段系统化学习路线。从Python基础、FastAPI开发、大模型概念到LangChain、RAG实战,再到Agent开发与微调,最后进行面试准备,每阶段都包含具体学习内容、实战任务和技能目标&am…...
DXY-COVID-19-Crawler部署完全手册:从零开始搭建疫情数据服务
DXY-COVID-19-Crawler部署完全手册:从零开始搭建疫情数据服务 【免费下载链接】DXY-COVID-19-Crawler 2019新型冠状病毒疫情实时爬虫及API | COVID-19/2019-nCoV Realtime Infection Crawler and API 项目地址: https://gitcode.com/gh_mirrors/dx/DXY-COVID-19-C…...
RecSysPapers中的因果推断技术:消除推荐偏见的终极武器
RecSysPapers中的因果推断技术:消除推荐偏见的终极武器 【免费下载链接】RecSysPapers 推荐/广告/搜索领域工业界经典以及最前沿论文集合。A collection of industry classics and cutting-edge papers in the field of recommendation/advertising/search. 项目地…...
MIT研究揭秘Scaling Law:叠加态现象如何让模型扩展如此可靠
上一篇:推理时计算与Inference Scaling:为什么推理模型会大幅抬高算力账单 下一篇:2026年5月AI模型排行榜:GPT-5.5、Claude Opus 4.7、DeepSeek V4三大阵营深度对比 核心结论:MIT研究人员在2026年5月发表的研究提供了S…...
一文帮你搞懂JavaScript的核心概念
JavaScript的核心概念介绍JavaScript作为现代Web开发的基石,掌握其核心概念对开发者至关重要。以下从语言特性、运行机制和关键组件三个维度展开分析。变量与作用域JavaScript采用var、let、const三种变量声明方式。var存在变量提升特性,函数作用域&…...
VQ-VA World:高效视觉问答框架的技术解析与实践
1. 项目概述:视觉问答技术的新实践 VQ-VA World是一个开源的视觉问答(Visual Question Answering)框架,它让计算机能够理解图像内容并回答人类提出的自然语言问题。这个框架在2023年GitHub上获得了超过2.4k星标,成为视…...
