sql一个字段内容拆分问题 - MS-SQL Server / 基础类
各位高手:咨询个sql语句:有个表中,一个字段里面装有这些内容,
字段名: sumall
字段内容: [汇总1001:30,1002:10,3001:15,4010:100,5006:1,6021:1000]
我想拆分为:
mx sl
1001 30
1002 10
3001 15
4010 100
5006 1
6021 1000
这样的sql怎么写?
字段内容中包含的有中括号的 [] 也是字段内容的一部分
SQL code:
declare @t table(sumall nvarchar(200))
insert @t select N'[汇总1001:30,1002:10,3001:15,4010:100,5006:1,6021:1000]'
;with sql_sf
as
(SELECT
sumall=SUBSTRING(replace(replace(a.sumall,N'[汇总',''),']',''),number,CHARINDEX(',',a.sumall+',',number)-b.number)
from @t a
JOIN master..spt_values b
ON b.type='p'
AND CHARINDEX(',',','+a.sumall,number)=number)
select left(sumall,charindex(':',sumall)-1)mx,
right(sumall,len(sumall)-charindex(':',sumall))sl
from sql_sf
SQL code:
CREATE FUNCTION f_splitSTR(
@s varchar(8000), --待分拆的字符串
@split varchar(10) --数据分隔符
)RETURNS @re TABLE(col varchar(100))
AS
BEGIN
DECLARE @splitlen int
SET @splitlen=LEN(@split+'a')-2
WHILE CHARINDEX(@split,@s)>0
BEGIN
INSERT @re VALUES(LEFT(@s,CHARINDEX(@split,@s)-1))
SET @s=STUFF(@s,1,CHARINDEX(@spli
相关问答:
tab1 字段:billdate,goodsid,incount,inmoney,outcount,outmoney,endprice,endcount,endamt
tab2 字段:goodsid,goodskind(商品类型)
tab3 字段:goodskind(商品类型),kindname
结果:
得到商品类型在一段时间 ......
字段1,字段2.....字段N,Status,ParentID
1,Name1....test1,1,99
1,Name1....test1,3,99
1,Name2....test2,1,101
1,Name2....test2,3,101
1,Name3....test3,2,101
1,Name1....test1,4,101
想要的结果是:
1,Na ......
求个vb中的sql语句的写法,次sql语句的用法是分页程序
我写的如下:其中A是用来接收每页显示的记录的条数,B是用来接收显示的当前的页面.
sqltext="select top A * from log where id not in(select top ( ......
我觉得mysql和sqlserver有共同的地方:
有个问题是关于表的锁问题:
进程A 进程B
select * from user where id in lock share mode(共享锁)
&nb ......