mssql SUBSTRING和charindex的用法
在工作中用到的例子:
select *
FROM [CSGDC.DataETLDB].[dbo].[StrategiesList] where strategy_name like '%基建系统%'
and SUBSTRING(strategy_name,charindex('_',strategy_name,12)+1,100) in
( select SUBSTRING(strategy_name,charindex('_',strategy_name,12)+1,100) as strategy_name1
FROM [CSGDC.DataETLDB].[dbo].[StrategiesList] where strategy_name like '%基建系统%' group by
SUBSTRING(strategy_name,charindex('_',strategy_name,12)+1,100)
having count(1)>1) and previous_sql is null
from:http://blog.csdn.net/yhc0322/article/details/7073953
假设一个字符串是邮箱地址“hello@163.com”,最后取到的字符串应该是“hello”。
因为上面的这个需求,看了一下数据库中关于字符串函数这方面的知识,最终可以得到以下几种解决的方法:
一、用到的函数:substring(' ', , )、charindex(' ',' ')
select SUBSTRING('hello@163.com',1,charindex('@','hello@163.com')-1)
1.substring(字符串表达式,开始位置,长度 ):
从一个指定字符串的指定位置截取制定长度的字符;
第一个参数表示被截取的字符串;
第二个参数表示要在第一个参数中开始截取的位置;
第三个参数表示要截取的长度。
例如:select substring('abc123',1,2) →返回ab
从字符串‘abc123’的第一个字符开始截取,共截取两个字符,最后得到‘ab’。
2.charindex(字符串表达式1,字符串表达式2[,整数表达式]):
在字符串2中查找字符串1,如果存在返回第一个匹配的位置,如果不存在返回0。如果字符串1和字符串2中有一个是null则返回null。
可以指定在字符串2中查找的起始位置。
例如:select charindex('ab','BCabTabD') → 返回3
select charindex('ab','BCabTabD',4) →返回6
二、用到的函数:left(' ', )、charindex(' ',' ')
select LEFT('hello@163.com',charindex('@','hello@163.com')-1)
1.left(字符串表达式,整数表达式):
从字符串表达式的最左边开始截取整数表达式个字符。
例如:select left('abcdef',3) →返回abc
mssql SUBSTRING和charindex的用法的更多相关文章
- SQL Server SubString和charindex的用法
语法 SUBSTRING ( expression , start , length ) 参数 expression 是字符串.二进制字符串.text.image.列或包含列的表达式.不要使用包含聚合 ...
- sql中 substring和charindex 的用法
-- 第一个参数是要截取的字符串,第二个参数是从第几个字符开始截取,第三个参数是截取的长度 --例如:select SUBSTRING('12345678',1,4) 返回 1234 -- selec ...
- sql语句中charindex的用法 可用于截取字符串
使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.这两个函数是如何运转的,解释他们的区别.同时提供一些例子,通过这些例子,你可以可以考虑使用这两个函数来解决很多不同的字符搜索的问题. ...
- [SQL]sql语句中charindex的用法
假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.我将告诉你这两个函数是如何运转的,解 ...
- js中substring和substr的用法
js中substring和substr的用法 substring 方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 开始和结束的位置,从零开始的索引 参数 ...
- charindex的用法
declare @str nvarchar(50);set @str='462,464,2';select @str as '字符串'select len(@str) as '字符长度' select ...
- js中substring和substr的用法 (转)
1.substring 方法 定义和用法 substring 方法用于提取字符串中介于两个指定下标之间的字符. 语法 stringObject.substring(start,stop) 参数 ...
- (转)sql语句中charindex的用法
假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.我将告诉你这两个函数是如何运转的,解 ...
- sql中charindex的用法
转自:https://www.cnblogs.com/beeone/p/3621743.html CHARINDEX和PATINDEX函数常常用来在一段字符中搜索字符或者字符串.如果被搜索的字符中包含 ...
随机推荐
- Primary Expression
Primary expressions are the building blocks of more complex expressions. They are literals, names, a ...
- Javascript返回顶部
控制按钮下拉到达一定距离时显示,返回顶层时消失,用JS中的延时定时器来模拟滚动条效果 <script type="text/javascript"> window.on ...
- 一分钟让你明白CSS中的盒模型
想必初学者对CSS盒模型总是很困惑吧.下面一分钟让你彻底明白盒模型: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" &q ...
- Steps
uva846:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_proble ...
- Delphi 缩放图像代码 - 支持PNG透明通道(利用了Windows的windowscodecs.dll)
要求Delphi2007或者更高版本, 系统要求至少XP-SP2以上 实际上是利用了Windows的windowscodecs.dll这个文件的功能 在VCL里已经封装为TWICImage类 proc ...
- android环境下两种md5加密方式
在平时开发过程中,MD5加密是一个比较常用的算法,最常见的使用场景就是在帐号注册时,用户输入的密码经md5加密后,传输至服务器保存起来.虽然md5加密经常用,但是md5的加密原理我还真说不上来,对md ...
- 【HDOJ】2440 Watch out the Animal
刚开始学随机算法,凸包+模拟退火. /* 2440 */ #include <iostream> #include <cstdio> #include <cstring& ...
- HDU 2444 The Accomodation of Students(判断是否可图 + 二分图)
题目大意:有一群人他们有一些关系,比如A认识B, B认识C, 但是这并不意味值A和C认识.现在给你所有互相认识的学生,你的任务是把所有的学生分成两个一组, 住在一个双人房里.相互认识的同学可以住在一个 ...
- Bit,Bytes,KB,MB,GB,TB,PB,EB,ZB,YB
Bit,Bytes,KB,MB,GB,TB,PB,EB,ZB,YB 汉字字符 2字节英文字符 1字节中文标点 2字节英文标点 1字节一个字节就是一个八位二进制数啊,2就是00000010,4就是000 ...
- oracle事务和锁
数据库事务概括 1. 说明 一组SQL,一个逻辑工作单位,执行时整体修改或者整体回退. 2.事务相关概念 1)事务的提交和回滚:COMMIT/ROLLBACK 2)事务的开始和结束 开始事务:连接到数 ...