总结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 中记录每一行数据在插入数据库时分配的物理地址(是唯一的字符串)

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

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

相关文章

自然语言处理、大语言模型相关名词整理

自然语言处理相关名词整理 零样本学习(zero-shot learning)词嵌入(Embedding)为什么 Embedding 搜索比基于词频搜索效果好? Word2VecTransformer检索增强生成(RAG)幻觉采样温度Top-kTop-p奖励模…

通过WebShell登录SQL Server主机并使用SSRS报表服务

背景信息 RDS SQL Server提供了WebShell功能,允许用户通过Web界面登录到RDS SQL Server实例的操作系统中,并在该操作系统中执行命令、上传下载文件等操作。WebShell功能方便用户对RDS SQL Server实例的管理和维护,特别是在无法使用SSH客户端的…

Win10系统下的EDGE浏览器启用IE模式

Win10系统下的EDGE浏览器目前已弃用IE内核,这样在访问某些较老的网站会有兼容性问题,本文记录了在EDGE浏览器中启用IE模式的操作方法。 一、启用EDGE浏览器的IE模式 要打开Internet Explorer模式,执行以下步骤: 1、在Microsoft Edge的地址栏…

物联网SaaS平台

在信息化、智能化浪潮席卷全球的今天,物联网SaaS平台作为推动工业数字化转型的重要工具,正日益受到广泛关注。那么,物联网SaaS平台究竟是什么?HiWoo Cloud作为物联网SaaS平台又有哪些独特优势?更重要的是,它…

基于 StarRocks 的风控实时特征探索和实践

编者荐语: 金融风控特征在实时业务中至关重要,是评估和管理风险的核心指标。经过评估,滴滴最终选择了 StarRocks 作为验证选项的落地方案。通过 StarRocks 实现流批一体,成功解决了风控实时特征流批分离的难题,缩短了开…

Java虚拟机——内存的分配详解

内存区域划分 对于大多数的程序员来说,Java 内存比较流行的说法便是堆和栈,这其实是非常粗略的一种划分,这种划分的“堆”对应内存模型的 Java 堆,“栈”是指虚拟机栈,然而 Java 内存模型远比这更复杂,想深…

Xxl-job执行器自动注册不上的问题

今天新建的项目要部署xxl-job,之前部署过好多次,最近没怎么部署,生疏了。部署完之后,服务一直没有注册到执行器管理里面,找了半天也没找到原因,看数据库里的xxl_job_registry表也是一直有数据进来。 后来看…

鸿蒙 Failed :entry:default@CompileResource...

Failed :entry:defaultCompileResource... media 文件夹下有文件夹或者图片名称包含中文字符 rawfile 文件夹下文件名称、图片名称不能包含中文字符

GIS 数据格式转换

1、在线工具 mapshaper 2、数据上传 3、数据格式转换 导入数据可导出为多种格式:Shapefile、Json、GeoJson、CSV、TopJSON、KML、SVG

第十五届蓝桥杯大赛软件赛省赛 C/C++ 大学 B 组

试题 C: 好数 时间限制 : 1.0s 内存限制: 256.0MB 本题总分:10 分 【问题描述】 一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位 )上 的数字是奇数,偶数位(十位、千位、十万位 &…

海外KOL推广:情感链接策略助力品牌口碑与忠诚度提升

在当今全球化的市场环境下,品牌在海外市场的推广已经成为提升竞争力和拓展业务的关键。与此同时,海外KOL的影响力也日益凸显,他们不仅仅是产品的推荐者,更是品牌与目标市场受众之间建立情感链接的关键角色。本文Nox聚星将和大家探…

使用阿里云试用Elasticsearch学习:Search Labs Tutorials 搭建一个flask搜索应用

文档:https://www.elastic.co/search-labs/tutorials/search-tutorial https://github.com/elastic/elasticsearch-labs/tree/main/example-apps/search-tutorial Full-Text Search

Unity 中消息提醒框

Tooltip 用于ui布局 using System.Collections; using System.Collections.Generic; using UnityEngine; using TMPro; using UnityEngine.UI;[ExecuteInEditMode()] // 可以在编辑模式下运行public class Tooltip : MonoBehaviour {public TMP_Text header; // 头部文本publi…

QT_day3

完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和密码不匹配&#xf…

第十届 蓝桥杯 单片机设计与开发项目 省赛

第十届 蓝桥杯 单片机设计与开发项目 省赛 输入: 频率信号输入模拟电压输入 输出(包含各种显示功能): LED显示SEG显示DAC输出 01 数码管显示问题:数据类型 bit Seg_Disp_Mode;//0-频率显示界面 1-电压显示界面 un…

安卓玩机工具推荐----MTK 高通芯片机型 免权限刷机 备份基带 去除锁类工具操作步骤解析

今天为友友解析一款手机维修的工具_PL,它可以刷写高通芯片 mtk芯片固件。可以备份mtk基带分区和恢复基带分区。带mtk刷写免权限。可以去除一些机型的用户锁【例如用户忘记手机锁屏密码类】以及去除机型的FRP锁等等 工具对于私人用户遇到一些手机故障 例如忘记密码锁…

预印本仓库ArXiv——防止论文录用前被别人剽窃

文章目录 一、什么是预印本二、什么是ArXiv2.1 ArXiv的领域2.2 如何使用 一、什么是预印本 预印本(Preprint)是指科研工作者的研究成果还未在正式出版物上发表,而出于和同行交流目的自愿先在学术会议上或通过互联网发布的科研论文、科技报告…

云卓LS-01喊话器说明书-新版中文

一: 概述 LS-01 无人机喊话器适用于搭载无人机进行交通管制、现场指挥、应急救援、人群疏导、防疫宣传、景区安防、鱼塘巡视、林业防控等场景。产品具有喊话、警报、播放多媒体文件等多种功能。喊话器外壳采用尼龙加纤材质,具有抗、抗震、轻便灵活、外观新颖、质量稳…

【深入理解Java IO流0x0A】NIO实战-网络聊天室

本篇博客将进行NIO编程实战,实现一个简单聊天室。 我们来通过 SocketChannel 和 ServerSocketChannel 实现一个 0.1 版的聊天室,先说一下需求,比较简单,服务端启动监听客户端请求,当客户端向服务器端发送信息后&#x…

Stable Diffusion之文生图模型训练

1、数据准备 提前准备好一组相关的照片。 在线的图片处理网站 BIRME - Bulk Image Resizing Made Easy 2.0 (Online & Free) 将图片转成统一大小,支持批量处理,效率高 2、生成提示词 进入stable diffusion webui页面 旧版直接使用 train/proproc…