mssql sql 字符串截取实例代码

mssql sql 字符串截取实例代码

关于字符串截取我们用substring函数

substring   (   expression   ,   start   ,   length   )   返回字符、binary、text   或   image   表达式的一部分。
参数
expression
是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
start
是一个整数,指定子串的开始位置。
length
是一个整数,指定子串的长度(要返回的字符数或字节数)。

left   (   character_expression   ,   integer_expression   )   返回从字符串左边开始指定个数的字符。
参数
character_expression
字符或二进制数据表达式。character_expression   可以是常量、变量或列。character_expression   必须是可以隐式地转换为   varchar   的数据类型。否则,请使用   cast   函数显式转换   character_expression。
integer_expression
是正整数。如果   integer_expression   为负,则返回空字符串。
返回类型
varchar

right   (   character_expression   ,   integer_expression   )   返回字符串中从右边开始指定个数的   integer_expression   字符。
参数
character_expression
由字符数据组成的表达式。character_expression   可以是常量、变量,也可以是字符或二进制数据的列。
integer_expression
是起始位置,用正整数表示。如果   integer_expression   是负数,则返回一个错误。
返回类型
varchar

下面看实例
有一列的值为

title
  aaaa,bb,cc
  bb,ff,gg
  ii

现在想截取成这样
  aaaa bb cc
  bb ff gg
  ii

也就是分成了3个字段了
请根据","来取 因为需求可能会是 要第2个逗号之前且第一个逗号之后的内容
所以根据逗号来判别更好!

if object_id('tempdb..#tb') is not null
drop table #tb
go
create table #tb (title varchar(50)) 
go
insert into #tb select 'aaaa,bb,cc'
      union all select 'bb,ff,gg'
      union all select 'ii'
go

select
title1 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))+1),
title2 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))),
title3 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))-1),
title4 = parsename(replace(title,',','.'), len(title) - len(replace(title,',',''))-2)
from #tb

/*
title1         title2         title3         title4
-------------- -------------- -------------- --------------
aaaa           bb             cc             null
bb             ff             gg             null
ii             null           null           null

(3 行受影响)

时间: 2024-09-21 16:06:37

mssql sql 字符串截取实例代码的相关文章

THINKPHP截取中文字符串函数实例代码

在项目开发中,我们常常会遇到英文.中文等字符串截取问题,比如说新闻列表页面需要新闻内容简介,这就要用到字符串截取了. 下面就为大家分享一个THINKPHP中已经准备好的字符串截取函数. # 函数解释: msubstr($str, $start=0, $length, $charset="utf-8″, $suffix=true) /* $str:要截取的字符串 $start=0:开始位置,默认从0开始 $length:截取长度 $charset="utf-8″:字符编码,默认UTF-8

JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)_javascript技巧

js判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个) 文本输入时,由于数据库表字段长度限制会导致提交失败,因此想到了此方法验证. 废话不多说上代码: <html> <head> <title>js判断输入字符串长度(汉字算两个字符,字母数字算一个)</title> <style type="text/css"> .pbt { margin-bottom: 10px; } .ie6 .pbt .ftid a, .ie

PHP中文字符串截取程序代码

1. 截取GB2312中文字符串  代码如下 复制代码 <?php //截取中文字符串 function mysubstr($str, $start, $len) { $tmpstr = ""; $strlen = $start + $len; for($i = 0; $i < $strlen; $i++) { if(ord(substr($str, $i, 1)) > 0xa0) { $tmpstr .= substr($str, $i, 2); $i++; } e

二个sql分页存储过程实例代码

这个还觉得不错的一个存储过程  代码如下 复制代码 /****** 对象:  StoredProcedure [dbo].[P_viewPage]    脚本日期: 05/14/2012 08:49:34 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO create PROC [dbo].[P_viewPage] -- Add the parameters for the stored procedure here @TableN

字符串中找出连续最长的数字字符串的实例代码_C 语言

复制代码 代码如下: //1. 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr) //功能: //在字符串中找出连续最长的数字串,并把这个串的长度返回, //并把这个最长数字串付给其中一个函数参数outputstr所指内存. //例如:"abcd12345ed125ss123456789"的首地址传给intputstr后,函数将返回9,outputstr所指的值为123456789 #include<stdio.

Java生成和解析XML格式文件和字符串的实例代码_java

1.基础知识: Java解析XML一般有四种方法:DOM.SAX.JDOM.DOM4J. 2.使用介绍 1).DOM (1)简介 由W3C(org.w3c.dom)提供的接口,它将整个XML文档读入内存,构建一个DOM树来对各个节点(Node)进行操作.优点就是整个文档都一直在内存中,我们可以随时访问任何节点,并且对树的遍历也是比较熟悉的操作:缺点则是耗内存,并且必须等到所有的文档都读入内存才能进行处理. (2)示例代码: 复制代码 代码如下: <?xml version="1.0&quo

JS字符串处理实例代码_javascript技巧

复制代码 代码如下: link(){var olink = getElementById("link");var text = olink.innerHTML;var start = text.indexOf(">")+1;var end = text.lastIndexOf("<");text = text.substring(start,end);location.href=text;}<a href="java:

PHP中英混合字符串截取函数代码_php技巧

复制代码 代码如下: function get_word($string, $length, $dot = '..',$charset='gbk') { if(strlen($string) <= $length) { return $string; } $string = str_replace(array(' ',' ', '&', '"', '<', '>'), array('','','&', '"', '<', '>'), $st

perl比较两个文件字符串的实例代码_perl

需求:取文件1中的一行,和文件2中所有的数据进行比较,有相同的保存起来,否则删除. 复制代码 代码如下: #!/usr/bin/perl#use strict;open(FILE1,"C:/Perl/BX/BX-Users.txt");open(FILE2,"C:/Perl/BX/BX-Book-Ratings.txt");open(result1,">C:/perl/BX/BX-Users_result.txt");my $i=0;my