`
sherrysky
  • 浏览: 88573 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

sql server拆分字符串

阅读更多
创建表
create table bb (studentid  varchar(100),markstr varchar(50))
insert into bb select
'2002081108','AAAAAAAAAAAAAAAAAAAAAAAAA' union all select
'2002081107','BBBBBBBBBBBBBBBBBBBBBBBBB' union all select
'2002081109','CCCCCCCCCCCCCCCCCCCCCCCCC' union all select
'2002081110','DDDDDDDDDDDDDDDDDDCDCDDCC' union all select
'2002081111','DDDEEDDDDDDDDDDEDDCDCDDCC'
---笨办法,写死的长度为25
select studentid,substring(markstr,1,1) as no1,substring(markstr,2,1) as no2,substring(markstr,3,1) as no3,
substring(markstr,4,1) as no4,substring(markstr,5,1) as no5,substring(markstr,6,1) as no6,substring(markstr,7,1) as no7,
substring(markstr,8,1) as no8,substring(markstr,9,1) as no9,substring(markstr,10,1) as no10,substring(markstr,11,1) as no11,
substring(markstr,12,1) as no12,substring(markstr,13,1) as no13,substring(markstr,14,1) as no14,substring(markstr,15,1) as no15,
substring(markstr,16,1) as no16,substring(markstr,17,1) as no17,substring(markstr,18,1) as no18,substring(markstr,19,1) as no19,
substring(markstr,20,1) as no20,substring(markstr,21,1) as no21,substring(markstr,22,1) as no22,substring(markstr,23,1) as no23,
substring(markstr,24,1) as no24,substring(markstr,25,1) as no25  into aa from bb

--drop table aa
--创建存储过程,动态生成n项
create proc proc_createtablegselectmarksplit
as
if   exists   (select   *   from   dbo.sysobjects   where   id   =   object_id(N'[dbo].[tablegselectmarksplit]')   and   OBJECTPROPERTY(id,   N'IsUserTable')   =   1)  
  drop   table   [dbo].[tablegselectmarksplit]
declare @i int
declare @t int
declare @sql varchar(8000)
set @sql=''
set @t=1
select @i=max(len(markstr)) from bb
while(@t<=@i)
begin
set @sql=@sql+',substring(markstr,'+cast(@t as varchar)+',1) as no'+cast(@t as varchar)
set @t=@t+1
end
set @sql= 'select studentid,'+stuff(@sql,1,1,'')+' into tablegselectmarksplit from bb '
exec(@sql)
--查询拆分完的结果表
select * from tablegselectmarksplit
分享到:
评论

相关推荐

    sqlserver 字符串分割、包含、匹配

    2、按指定符号分割字符串,返回“分割后指定索引的第几个元素”的值,象数组一样方便 3、检查一个元素是否在数组中,返回1或0 4、检查一个元素是否与数组中的相匹配,并返回相匹配的数组的值。参数值为0表示全模糊...

    Sqlserver长字符串拆分为多行 高效

    自己写了一个function 用于处理拆分时的逻辑运算,性能比网上找的快好几倍, 代码和说明:https://blog.csdn.net/jimyao37/article/details/123522885

    Sql拆分字符串

    ### SQL拆分字符串知识点详解 在SQL Server中,经常需要对字符串进行操作,例如分割、合并等。本文将详细介绍如何使用SQL Server中的存储过程来实现字符串的拆分,并通过一个具体的例子来展示整个过程。 #### SQL...

    sqlserver2008 拆分字符串

    总结起来,SQL Server 2008中拆分字符串通常需要自定义解决方案,如上述的交叉连接方法。虽然这个方法可以工作,但在处理大量数据时,可能需要寻找更优化的策略,例如使用用户定义的函数(UDF),或者在支持的版本中...

    SQLServer逗号分隔的字符串转换成表

    该临时表只有一字段,字段的类型根据要拆分字符串里的实际数据类型。 2. 利用 SQL Server 函数进行字符串拆分:可以使用 SQL Server 的字符串函数,例如 CHARINDEX、LEFT、RIGHT、LEN 等函数对字符串进行拆分。 3....

    sql2000数据拆分

    根据提供的信息,我们可以详细探讨如何在SQL Server 2000环境中实现数据拆分功能。具体来说,就是如何将一个包含逗号分隔值的字段拆分成多行记录。 ### SQL Server 2000 数据拆分技术 #### 1. **背景与目标** - *...

    Sql Server数据库中自定义拆分字符串函数Split()

    Sql Server数据库中自定义拆分字符串函数Split()

    sqlserver中根据某个字符切割字符串函数

    sqlserver中根据某个字符切割字符串函数,比如根据逗号切割字符串,结果返回的是一个表值函数,这个函数返回结果字段包含Id和Value,Id为序号,Value为切割后的值

    解析SQL Server连接字符串信息 编程小实例,C++.net源代码编写

    在本实例中,我们将深入探讨如何解析SQL Server的连接字符串,这是一个编程任务,主要涉及C++和.NET框架。理解并正确处理连接字符串对于任何需要访问SQL Server数据库的应用程序都至关重要。 首先,SQL Server连接...

    sql2000字符串分割,字符串拆分

    本文将详细介绍如何使用SQL Server 2000中的T-SQL语言实现字符串的拆分功能,并提供具体的代码示例。 #### 标题解读:“sql2000字符串分割,字符串拆分” 此标题指明了文章的主要内容是关于如何在SQL Server 2000...

    SQL字符串按殊字符串拆分.zip

    内置的`STRING_SPLIT`函数是SQL Server 2016引入的,用于按分隔符拆分字符串,但这个函数可能无法满足所有特殊字符拆分需求,例如,它不支持正则表达式。在这种情况下,开发者可能会创建自定义函数,如`...

    SQL Server字符串切割函数

    在SQL Server中,字符串处理是常见的任务之一,而字符串切割函数则是处理字符串的重要工具。本文将深入探讨SQL Server中的字符串切割函数,特别是如何创建和使用用户定义函数来实现这一功能。 首先,我们要明白用户...

    SQL SERVER 根据关键字符,将一列分成多行

    可根据关键字符将一列分成多行显示,例如 A B 1 1.1.2 拆分成 1 1 1 1 1 2 进行相关的显示

    SqlServer下通过XML拆分字符串的方法

    代码如下: DECLARE @idoc int; DECLARE @doc xml; set @doc=cast(‘&lt;Root&gt;&lt;item&gt;’+replace(@SelectedProjectArray,’,’,'&lt;/ProjID&gt;&lt;/item&gt;&lt;item&gt;&lt;ProjID&gt;’)+'&lt;/ProjID&gt;&lt;/item&gt;’ as xml) EXEC sp_xml_...

    sqlserver实现字符拆解成表格的形式

    在SQL Server中,经常需要处理字符串操作,例如将一个包含多个值的字符串拆分成多个行。这种需求常见于数据导入、数据清洗等场景。本篇文章将详细介绍如何利用SQL Server自定义函数实现字符串拆分并转化为表格形式的...

    SQLServer中的切割字符串SplitString函数

    在SQL Server中,当需要将一个字符串按照特定的分隔符进行拆分成多个子字符串时,通常会遇到问题,因为SQL Server的标准库中并没有提供内置的Split函数。为了解决这个问题,开发人员经常需要创建自定义的函数来实现...

    sqlserver2005的base64加密解密函数

    Base64编码能够确保数据在传输过程中不被篡改,因为它是通过特定算法将二进制数据转换为一种标准格式的文本字符串。本文将详细讲解如何在SQL Server 2005中实现Base64的加密和解密功能。 一、Base64编码原理 Base64...

    sqlserver 字符串分拆 语句

    标题和描述提到的“sqlserver 字符串分拆 语句”是指SQL Server中用于将字符串分拆成多个部分的方法。下面我们将详细探讨如何在SQL Server中实现这个功能。 首先,SQL Server并没有内置的函数可以直接对字符串进行...

Global site tag (gtag.js) - Google Analytics