select distinct b.* from a b,a c where
b.id=c.id
and (select count (*) from f_split(a.sid,','))>0
f_split是网上找的一个split函数。这句话在sql server 2005 执行没有问题,但是在2000下有问题 。
我把2000下的数据库附加到2005也是出现问题。我在2005直接创建表 执行的话什么问题都没有
...全文
15912打赏收藏
sql 2005 和2000 的怪异问题
select distinct b.* from a b,a c where b.id=c.id and (select count (*) from f_split(a.sid,','))>0 f_split是网上找的一个split函数。这句话在sql server 2005 执行没有问题,但是在2000下有问题 。 我把2000下的数据库附加到2005也是出现问题。我在2005直接创建表 执行的话什么问题都没有
ALTER function [dbo].[f_split](@c varchar(2000),@split varchar(2))
returns @t table(col varchar(20))
as
begin
while(charindex(@split,@c)<>0)
begin
insert @t(col) values (substring(@c,1,charindex(@split,@c)-1))
set @c = stuff(@c,1,charindex(@split,@c),'')
end
insert @t(col) values (@c)
return
end