记录用到的mssql的几个方法
1、RIGHT ( character_expression , integer_expression )
返回字符串中从右边开始指定个数的字符
character_expression
字符或二进制数据表达式。character_expression 可以是常量、变量或列。character_expression 可以是任何能够隐式转换为 varchar 或 nvarchar 的数据类型,但 text 或 ntext 除外。否则,请使用 CAST 函数对 character_expression 进行显式转换。
integer_expression
正整数,指定 character_expression 将返回的字符数。如果 integer_expression 为负,则会返回错误。integer_expression 可以是 bigint 类型。
eg:
SELECT RIGHT('This is a Test3', 5)
结果:Time3
2、LEFT方法同上。
3、LEN ( string_expression )
返回指定字符串表达式的字符(而不是字节)数,其中不包含尾随空格。
string_expression
要计算的字符串。
返回类型
如果 expression 的数据类型为 varchar(max)、nvarchar(max) 或 varbinary(max),则为 bigint;否则为 int。
eg:
SELECT LEN('1')
结果:1
如果不计算参数后面的空格,但参数前面的空格会计算在内。
4、CHARINDEX ( expression1 ,expression2 [ , start_location ] )
返回字符串中指定表达式的开始位置。
备注
如果 expression1 或 expression2 之一是 Unicode 数据类型(nvarchar 或 nchar)而另一个不是,则将另一个转换为 Unicode 数据类型。CHARINDEX 不能与 text、ntext 和 image 数据类型一起使用。
如果 expression1 或 expression2 之一为 NULL,并且数据库兼容级别为 70 或更高,则 CHARINDEX 将返回 NULL。如果数据库兼容级别为 65 或更低,则 CHARINDEX 将仅在 expression1 和 expression2 都为 NULL 时才返回 NULL 值。
如果在 expression1 内找不到 expression2,则 CHARINDEX 返回 0。
CHARINDEX 将根据输入的排序规则执行比较操作。若要以指定排序规则进行比较,则可以使用 COLLATE 将显式排序规则应用于输入值。
参数
expression1
一个表达式,其中包含要查找的字符的序列。expression1 是一个字符串数据类别的表达式。
expression2
一个表达式,通常是一个为指定序列搜索的列。expression2 属于字符串数据类别。
start_location
开始在 expression2 中搜索 expression1 时的字符位置。如果 start_location 未被指定、是一个负数或零,则将从 expression2 的开头开始搜索。start_location 可以是 bigint 类型。
返回类型
如果 expression2 的数据类型为 varchar(max)、nvarchar(max) 或 varbinary(max),则为 bigint,否则为 int
eg:
SELECT CHARINDEX('-','W-22-4',2)
结果:2
5、SUBSTRING ( expression ,start , length )
返回字符表达式、二进制表达式、文本表达式或图像表达式的一部分。
参数
expression
是字符串、二进制字符串、文本、图像、列或包含列的表达式。不要使用包含聚合函数的表达式。
start
指定子字符串开始位置的整数。start 可以为 bigint 类型。
length
一个正整数,指定要返回的 expression 的字符数或字节数。如果 length 为负,则会返回错误。length 可以是 bigint 类型。
eg:
SELECT SUBSTRING('SqlServer_2005', 4, 6)
结果:Server
6、CAST ( expression AS data_type [ (length ) ])
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
将一种数据类型的表达式显式转换为另一种数据类型的表达式。CAST 和 CONVERT 提供相似的功能。
记录用到的mssql的几个方法的更多相关文章
- ASP.NET Web API 记录请求响应数据到日志的一个方法
		
原文:http://blog.bossma.cn/dotnet/asp-net-web-api-log-request-response/ ASP.NET Web API 记录请求响应数据到日志的一个 ...
 - 解决DBGridEh遍历记录后不移动当前行位置的方法
		
解决DBGridEh遍历记录后不移动当前行位置的方法 在用DBGridEh配合ClientDataSet使用时,需要知道用户选择了哪些记录,可用遍历记录的方法查询选择列是否为真,但在这之后,Clien ...
 - 600万用户数据导入MYSQL、MSSQL、Oracle数据库方法【转】
		
1.导入MySql数据库 参考文献:http://zhuaxia.org/blog/post/145 1.1.LOAD DATA INFILE语法 因为获得的数据库文件是一个文本文件www.csd ...
 - MSSQL常用操作及方法总结
		
1.在安装Sql或sp补丁的时候系统提示之前有挂起的安装操作,要求重启的解决办法: 到注册表中找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control ...
 - 关于使用视图进行分页时出现当前记录集不支持书签的错误解决方法及原因(asp)
		
一般在使用视图进行查询时,视图中意般都关联了两个或者更多个表,一般在这种情况下才会使用视图,但是但我在使用视图来查询数据时没有问题,但是一旦在分页中使用到视图进行查询就会出现错误提示如下: ADODB ...
 - Oracle 多行记录合并/连接/聚合字符串的几种方法
		
怎么合并多行记录的字符串,一直是oracle新手喜欢问的SQL问题之一,关于这个问题的帖子我看过不下30个了,现在就对这个问题,进行一个总结.-什么是合并多行字符串(连接字符串)呢,例如: SQL&g ...
 - mysql 分页存储过程 一次返回两个记录集(行的条数,以及行记录),DataReader的Read方法和NextResult方法
		
DELIMITER $$ USE `netschool`$$ DROP PROCEDURE IF EXISTS `fn_jk_GetCourses`$$ CREATE DEFINER=`root`@` ...
 - 记录一个源码安装mysql5.6的方法
		
https://www.jb51.net/article/118853.htm 如果之前源码安装过mysql5.6的话,卸载方法如下:rm -rf /var/lib/mysql/rm -rf /usr ...
 - 入坑Intel OpenVINO:记录一个示例出错的原因和解决方法
		
今天试用OpenVINO的例子,在过程中发现了一些其他人没有经历的坑特别记录一下. 出错时候:执行Intel OpenVINO示例的是时候,出错的提示代码: 用于 .NET Framework 的 M ...
 
随机推荐
- com.netflix.client.ClientException: Load balancer does not have available server for client:xxx
			
重启一个web模块,刷新页面报错, 负载均衡器没有可用的服务器给客户端:在网关添加. ribbon: eureka: enabled: true
 - 网站性能测试工具 webbench 的安装和使用-linux
			
1.webbench的下载和安装 wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz sudo tar xvf we ...
 - java 中利用反射机制获取和设置实体类的属性值
			
摘要: 在java编程中,我们经常不知道传入自己方法中的实体类中到底有哪些方法,或者,我们需要根据用户传入的不同的属性来给对象设置不同的属性值,那么,java自带的反射机制可以很方便的达到这种目的,同 ...
 - curl的速度为什么比file_get_contents快以及具体原因
			
一.背景 大家做项目的时候,不免会看到前辈的代码.博主最近看到前辈有的时候请求外部接口用的是file_get_contents,有的用的是curl.稍微了解这两部分的同学都知道,curl在性 ...
 - hive中同源多重insert写法
			
多重insert: with tmp_a as ( select name from tmp_test3 ) from tmp_a insert overwrite table tmp_test1 s ...
 - Python装饰器之functools.wraps的作用
			
# -*- coding: utf-8 -*- # author:baoshan def wrapper(func): def inner_function(): pass return inner_ ...
 - openresty开发系列30--openresty中使用全局缓存
			
openresty开发系列30--openresty中使用全局缓存 Nginx全局内存---本地缓存 使用过如Java的朋友可能知道如Ehcache等这种进程内本地缓存.Nginx是一个Master进 ...
 - 本地jar包上传docker容器
			
先安装docker的注册服务器: [root@VM_0_7_centos ~]# docker run -d -p : --restart=always --name registry2 regist ...
 - 两种Redis持久化原理的详解
			
Redis为持久化提供了两种方式: RDB:在指定的时间间隔能对你的数据进行快照存储. AOF:记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据. 本文将通过下面内容的介 ...
 - [LeetCode] 284. Peeking Iterator 瞥一眼迭代器
			
Given an Iterator class interface with methods: next() and hasNext(), design and implement a Peeking ...