易截截图软件、单文件、免安装、纯绿色、仅160KB

关于SQL SERVER 数据拆分

if object_id('tb') is not null drop table tb
go
create table tb([A] varchar(10),[B] int)
insert tb
select 'bcd',1 union all
select 'bcde',2 union all
select 'cd',3
go
个人分析这道题的思路是:
通过Substring() 来循环分割 B 列下的字符串。。
--想得到的结果:
/**
a    b          
---- -----------
b    1
c    1
d    1
b    2
c    2
d    2
e    2
c    3
d    3
(所影响的行数为 9 行)
**/
(1):select
substring(a.A,b.number,1) as a,a.b
from tb a,
master..spt_values b
where b.type='P' and b.number>0
and b.number<len(a.a)
/**
a    b          
---- -----------
b    1
c    1
d    1
b    2
c    2
d    2
e    2
c    3
d    3
(所影响的行数为 9 行)
**/
(2)
SELECT TOP 100 ID=IDENTITY(INT,1,1) INTO #NUM from SYS.SYSCOLUMNS A,SYS.SYSCOLUMNS B
SELECT
    A.b,[VALUE]=SUBSTRING(A.a,B.ID,1)
from
    #TB A,#NUM B
WHERE
    b.id <=len(a.a)
/*
b          VALUE
----------- -----
1          b
1          c
1          d
2          b
2          c
2          d
2          e
3          c
3          d


相关文档:

SQL Server CHARINDEX函数和PATINDEX函数详解

假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来搜索文字列和字符串。我将告诉你这两个函数是如何运转的,解释他们的区别。同时提供一些例子,通过这些例子,你可以可以考虑使用这两个函数来解决很多不同的字符搜索的问题。
  CHARI ......

PL/SQL中JOB用法小结

一、设置初始化参数 job_queue_processes
  sql> alter system set job_queue_processes=n;(n>0)
  job_queue_processes最大值为1000
  
  查看job queue 后台进程
  sql>select name,description from v$bgprocess;
  
  二,dbms_job package 用法介绍
  包含以下子过程:
  
  ......

表结构信息查询 sql server 2005


--sql server 2005
-- 1. 表结构信息查询
-- ========================================================================
-- 表结构信息查询
-- 邹建 2005.08(引用请保留此信息)
-- ========================================================================
SELECT
    TableName=CASE WHEN ......

sql陽曆轉陰曆

USE [rossic]
GO
/****** Object:  StoredProcedure [dbo].[fn_GetLunar]    Script Date: 02/23/2010 15:46:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
     
CREATE     proc   [dbo].[fn_GetLunar]   ......

SQL中使用CONVERT转换时间输出格式

SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/06
SELECT CONVERT(varchar(100), GETDATE(), 2): 06.05.16
SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/06
SELECT CONVERT(varchar(100), GETDATE(), 4): 16.05.06
SELECT CONVERT(varch ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号