分割“版區(qū)負(fù)責(zé)人Id”,使其結(jié)果為
創(chuàng)新互聯(lián)建站專注于岑鞏企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,商城網(wǎng)站建設(shè)。岑鞏網(wǎng)站建設(shè)公司,為岑鞏等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)
版區(qū)Id????版區(qū)負(fù)責(zé)人Id
6????????????123
6????????????456
6????????????789
(這里,我想來想去,只有使用零時(shí)表+游標(biāo)來實(shí)現(xiàn),個(gè)人沒有想到更好的方法)
CREATE?FUNCTION?[dbo].[fun_Split]
(
@str?VARCHAR(MAX)?,
@split?VARCHAR(10)
)
RETURNS?TABLE
AS?
RETURN
(SELECT?B.id?FROM??????(?SELECT????[value]?=?CONVERT(XML?,?'v'?+?REPLACE(@str?,?@split?,?'/vv')
+?'/v')
)?A
OUTER?APPLY?(?SELECT??id?=?N.v.value('.'?,?'varchar(100)')
FROM????A.[value].nodes('/v')?N?(?v?)
)?B
)
GO
--2005以及以上的版本支持這種分割寫法。
用xml path,把數(shù)據(jù)搞成你所要的結(jié)果
假設(shè)2016-01-01這話日期在單元格A1輸入公式B1=VALUE(TEXT(YEAR(A1)MONTH(A1)DAY(A1),0))問題搞定純手打,望采納
如樓上給的 單獨(dú)分割一部分 ? ?也可用下面的函數(shù) 分割出一個(gè)集合
--?1.0?拆分字符串?參數(shù)?@strSource要操作的字符串?@strSeparator分隔符
CREATE?FUNCTION?[dbo].fn_splitStr(?@strSource?NVARCHAR(4000),@strSeparator?NVARCHAR(10)?)
RETURNS?@tbResult?TABLE(id?INT?IDENTITY(1,1),rs?NVARCHAR(1000))
AS
BEGIN
DECLARE?@dwIndex?INT,@strResult?NVARCHAR(1000),@dwSeparatorLen?INT=LEN(@strSeparator);
SET?@dwIndex?=?CHARINDEX(@strSeparator,@strSource);--?取得第一個(gè)分隔符的位置
WHILE?@dwIndex0
BEGIN
SET?@strResult?=?LEFT(@strSource,@dwIndex-1);
INSERT?@tbResult?VALUES(@strResult);
--將要操作的字符串去除已切分部分
SET?@strSource?=?SUBSTRING(@strSource,@dwIndex+LEN(@dwIndex),LEN(@strSource));
SET?@dwIndex?=?CHARINDEX(@strSeparator,@strSource);?--循環(huán)量增加
END
--處理最后一節(jié)
IF?LEN(@strSource)??0?INSERT?@tbResult?VALUES(@strSource)
RETURN;
END
GO
在SQL Server2000 中事務(wù)復(fù)制的改進(jìn)主要包括以下幾個(gè)方面.并行快照處理保證即使在創(chuàng)建初始快照時(shí)仍可對(duì)出版表進(jìn)行修改提高錯(cuò)誤處理能力可以跳過指定的錯(cuò)誤繼續(xù)進(jìn)行數(shù)據(jù)復(fù)制.在訂購者處對(duì)復(fù)制數(shù)據(jù)進(jìn)行確認(rèn)包括對(duì)垂直分割的確認(rèn)通過SQL Server Enterprise Manager 也可以使用確認(rèn)
---
以上,希望對(duì)你有所幫助。
SQL Server Split函數(shù)
--Author:zc_0101
--說明:
--支持分割符多字節(jié)
--使用方法
--Select * FROM DBO.F_SQLSERVER_SPLIT('1203401230105045','0')
--select * from DBO.F_SQLSERVER_SPLIT('abc1234a12348991234','1234')
--Select * from DBO.F_SQLSERVER_SPLIT('ABC',',')
1 CREATE FUNCTION F_SQLSERVER_SPLIT(@Long_str NVARCHAR(MAX),@split_str NVARCHAR(100))
2 RETURNS @tmp TABLE(
3 ID inT IDENTITY PRIMARY KEY,
4 short_str NVARCHAR(MAX)
5 )
6 AS
7 BEGIN
8 DECLARE @short_str NVARCHAR(MAX),@split_str_length int,@split_str_Position_Begin int
9 SET @split_str_length = LEN(@split_str)
10 SET @Long_str=REPLACE(REPLACE(@Long_str,CHAR(10),''),CHAR(13),'')
11 IF CHARINDEX(@split_str,@Long_str)=1
12 SET @Long_str=STUFF(@Long_str,1,@split_str_length,'')
13 IF CHARINDEX(@split_str,@Long_str)=0
14 INSERT INTO @tmp SELECT @Long_str
15 ELSE
16 BEGIN
17 WHILE 10
18 BEGIN
19 SET @split_str_Position_Begin = CHARINDEX(@split_str,@Long_str)
20 SET @short_str=LEFT(@Long_str,@split_str_Position_Begin-1)
21 IF @short_str'' INSERT INTO @tmp SELECT @short_str
22 SET @Long_str=STUFF(@Long_str,1,@split_str_Position_Begin+@split_str_length-1,'')
23 SET @split_str_Position_Begin = CHARINDEX(@split_str,@Long_str)
24 IF @split_str_Position_Begin=0
25 BEGIN
26 IF LTRIM(@Long_str)''
27 INSERT INTO @tmp SELECT @Long_str
28 BREAK
29 END
30 END
31 END
32 RETURN
33 END
網(wǎng)頁名稱:sqlserver分割,sqlserver分割函數(shù)
網(wǎng)站鏈接:http://chinadenli.net/article38/dseoopp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、品牌網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、企業(yè)建站、網(wǎng)站維護(hù)、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)