Sql字符串函数(1)

--1.截取已知长度的函数

Select @S1='http://www.163.com'-- A.截取从字符串左边开始N个字符 Declare @S1 varchar(100) 显示结果: http
Select Left(@S1,4)


Select @S1='http://www.163.com' -- B.截取从字符串右边开始N个字符(例如取字符http://www.163.com/) Declare @S1 varchar(100) 显示结果: http://www.163.com/
Select right(@S1,11)

 

Select @S1='http://www.163.com' -- C.截取字符串中任意位置及长度(例如取字符www) Declare @S1 varchar(100)  显示结果: http://www.163.com/
Select SUBSTRING(@S1,8,3)

 

-- 2.截取未知位置的函数

A.截取指定字符串后的字符串(例如截取http://后面的字符串)


方法一: Declare @S1 varchar(100)
Select @S1='http://www.163.com'
Select Substring(@S1,CHARINDEX('www',@S1)+1,Len(@S1))
/*此处也可以这样写:Select Substring(@S1,CHARINDEX('//',@S1)+2,Len(@S1))*/
------------------------------------
显示结果: http://www.163.com/
 

需要注意:CHARINDEX函数搜索字符串时,不区分大小写,因此CHARINDEX('www',@S1)也可以写成CHARINDEX('WWW',@S1)

 

方法二:(与方法一类似) Declare @S1 varchar(100)
Select @S1='http://www.163.com'
Select Substring(@S1,PATINDEX('%www%',@S1)+1,Len(@S1))
--此处也可以这样写:Select Substring(@S1,PATINDEX('%//%',@S1)+2,Len(@S1))
------------------------------------
显示结果: http://www.163.com/
 函数PATINDEX与CHARINDEX区别在于:前者可以参数一些参数,增加查询的功能


方法三: Declare @S1 varchar(100)
Select @S1='http://www.163.com'
Select REPLACE(@S1,'http://','')
------------------------------------
显示结果: http://www.163.com/


利用字符替换函数REPLACE,将除需要显示字符串外的字符替换为空


方法四: Declare @S1 varchar(100)
Select @S1='http://www.163.com'
Select STUFF(@S1,CHARINDEX('http://',@S1),Len('http://'),'')
------------------------------------
显示结果: http://www.163.com/

函数STUFF与REPLACE区别在于:前者可以指定替换范围,而后者则是全部范围内替换


B.截取指定字符后的字符串(例如截取C:\Windows\test.txt中文件名)
与A不同的是,当搜索对象不是一个时,利用上面的方法只能搜索到第一个位置


方法一:    Declare @S1 varchar(100)
Select @S1='C:\Windows\test.txt'
select right(@S1,charindex('\',REVERSE(@S1))-1)
-------------------------------------
显示结果: text.txt
 
利用函数REVERSE获取需要截取的字符串长度

 

 

 

Declare @S1 varchar(100)
Select @S1='ty_1234567'
Select Substring(@S1,0,4)
Select Left(@S1,3)
SELECT PATINDEX('ty_%',@S1)
SELECT 1 WHERE 'ty_123' LIKE 'ty[_]%'

 

转载于:https://www.cnblogs.com/andy_tigger/archive/2010/07/16/1778509.html

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

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

相关文章

工作397-Wxml

WXMLWXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。要完整了解 WXML 语法,请参考WXML 语法参考。用以下一些简单的例子来看看 WXML 具有什么能力: …

php格式的种子,php读取torrent种子文件内容的方法(测试可用)

本文实例讲述了php读取torrent种子文件内容的方法。分享给大家供大家参考,具体如下:/*** Class xBEncoder* Author: Angus.Fenying* Version: 0.1* Date: 2014-06-03** This class helps stringify or parse BENC* codes.** All Copyrights 2007 - 2014 …

API网关从入门到放弃

前言 假设你正在开发一个电商网站,那么这里会涉及到很多后端的微服务,比如会员、商品、推荐服务等等。 那么这里就会遇到一个问题,APP/Browser怎么去访问这些后端的服务? 如果业务比较简单的话,可以给每个业务都分配一个独立的域…

BarTender操作遇到OLE DB遇到了错误0x80004005”的问题

在使用BarTender打印条码时操作遇到"OLE DB遇到了错误0x80004005”的问题 在打印时关掉数据库所连接的Excel文件即可转载于:https://www.cnblogs.com/edrp/archive/2010/07/18/1780122.html

工作397-Wx

WXSSWXSS (WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式。WXSS 用来决定 WXML 的组件应该怎么显示。为了适应广大的前端开发者,WXSS 具有 CSS 大部分特性。同时为了更适合开发微信小程序,WXSS 对 CSS 进行了扩充以及修改。与…

震惊!垃圾分类居然能用Python搞定!

目录 0 引言 1 环境 2 需求分析 3 代码实现 4 后记 0 引言 纸巾再湿也是干垃圾?瓜子皮再干也是湿垃圾??最近大家都被垃圾分类折磨的不行,傻傻的你是否拎得清????自2019.07.01开始,上海已率先实施垃圾分类…

java中 try用法,Java里try catch的简单用法

优质回答 回答者:temps1991Java里try catch的简单用法:1、trycatch程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理。然后执行catch块后面的语句扩展部分:1、trycatchfinally程序的流程是&…

免费试用 Mobile Me

曾经尝试着注册过Mobile me,发现居然试用也要提供信用卡,而且地区选项里根本就没有中国,故愤然弃之。 今天忽然想再尝试一把,毕竟把mac、iphone,和即将到来的ipad连在一起是挺有意思的事情。 打开http://www.apple.com…

php call()函数,PHP中__call()方法详解

前面给大家介绍了《__construct(),类的构造函数》《__destruct(),类的析构函数》,下面继续给大家介绍PHP中__call()方法。__call(),在对象中调用一个不可访问方法时调用。该方法有两个参数,第一个参数 $function_name …

工作398-关于e.currentTarget.dataset的取值。

wxjs代码&#xff1a;GetAction: function (e) {var action e.currentTarget.dataset.action;console.log(action); //father}wxml代码&#xff1a;<view data-action"father" bindtap"GetAction"><image src"https://ss0.baidu.com/6ONWsj…

Postman: Test

Tests 参考&#xff1a;Writing Tests Testing examples 这里写测试用例&#xff0c;进行一些判断等等。即处理断言 下面新建了两个测试用例&#xff0c;名字分别是”Status code is 200“ 、”Status code name has string“。 “responseCode.code 200” 返回 True 或者 Fal…

nginx php怎么配置伪静态,nginx rewrite 伪静态配置参数和使用例子

正则表达式匹配&#xff0c;其中&#xff1a;* ~ 为区分大小写匹配* ~* 为不区分大小写匹配* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配文件及目录匹配&#xff0c;其中&#xff1a;* -f和!-f用来判断是否存在文件* -d和!-d用来判断是否存在目录* -e和!-e用来判断是否…

工作399-openType=“getUserInfo“ lang=“zh_CN“ bindgetuserinfo=“getUserInfo“

获取用户信息组件介绍组件变化&#xff1a;open-type 属性增加 getUserInfo &#xff1a;用户点击时候会触发 bindgetuserinfo 事件。新增事件 bindgetuserinfo &#xff1a;当 open-type 为 getUserInfo 时&#xff0c;用户点击会触发。可以从事件返回参数的detail字段中获取到…

比IETEST更好用的浏览器兼容性测试软件[绿色]

Xenocode Browser Sandbox 改变了基于 Windows 的浏览器兼容测试工具的游戏规则&#xff0c;只需点一下鼠标&#xff0c;就会直接打开一堆各式各样的浏览器窗口&#xff0c;你可以在不同版本的 IE, Firefox, Google Chrome, Safari 进行测试。是真正的测试&#xff0c;不是屏幕…

oracle函数 sysdate

【功能】&#xff1a;返回当前日期。 【参数】&#xff1a;没有参数&#xff0c;没有括号 【返回】&#xff1a;日期 【示例】select sysdate hz from dual; 返回&#xff1a;2008-11-5转载于:https://www.cnblogs.com/fanweisheng/p/11119836.html

php守护进程热更新,服务器编程--守护进程

守护(Daemon)进程又叫作“精灵进程”&#xff0c;虽然守护进程这个名字更为常用&#xff0c;但是个人感觉还是精灵进程较为机灵可爱些。服务器进程一般都是守护进程&#xff0c;这类进程的一个显著特点就是无交互地在后台进程。注意&#xff1a;这里所说的无交互并不是说真的不…

打开eclipse出现JVM terminated.Exit Code=-1错误的解决办法

&#xff30;&#xff33;&#xff1a;还有一种情况就是&#xff2a;&#xff36;&#xff2d;版本号太低&#xff0c;这个要重新安装后将&#xff2a;&#xff24;&#xff2b;目录置于&#xff4f;&#xff52;&#xff41;&#xff43;&#xff4c;&#xff45;前面&#xf…

【期外】 (一)关于LSH :局部敏感哈希算法

LSH是我同学的名字&#xff0c;平时我会亲切的称呼他为离骚&#xff0c;老师好&#xff0c;左移&#xff08;leftshift&#xff09;&#xff0c;小骚骚之类的&#xff0c;最近他又多了一个新的外号&#xff1a;局部敏感哈希&#xff08;Locally sensitive hashing)。 好了&…

java 数据库连接实例,Java连接各种数据库的实例

Java连接各种数据库的实例1、Oracle8/8i/9i数据库(thin模式)以下为引用的内容&#xff1a;Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url"jdbc:Oracle:thin:localhost:1521:orcl";//orcl为数据库的SIDString user"test…