日期:2014-05-18 浏览次数:20855 次
charindex('、'+convert(varchar(2000), dbo.Finance_Refund.Tid)+'、','、'+dbo.Sales_Order.TopTids+'、') > 0
--引号里的是你的分隔符
------解决方案--------------------
select * from AA inner join BB on CHARINDEX('、' + RTRIM(AA.Tid) + '、','、' + BB.TopTids + '、') > 0
------解决方案--------------------
--try
SELECT *
FROM Finance_Refund
WHERE EXISTS ( SELECT 1
FROM Sales_Orderwhere
WHERE CHARINDEX(',' + LTRIM(Finance_Refund.Tid) + ',', ',' + LTRIM(Sales_Order.TopTids) + ',') > 0 )
------解决方案--------------------
--try
SELECT *
FROM Finance_Refund
WHERE EXISTS ( SELECT 1
FROM Sales_Orderwhere
WHERE CHARINDEX('、' + LTRIM(Finance_Refund.Tid) + '、', '、' + LTRIM(Sales_Order.TopTids) + '、') > 0 )
------解决方案--------------------
declare @AA table
(id int,Tid int)
insert into @AA
select 1,1001
declare @BB table
(id int,TopTids varchar(20))
insert into @BB
select 1, '1001、1002、1003' union all
select 2, '1002、1003'
select * from @AA AA inner join @BB BB on CHARINDEX('、' + RTRIM(AA.Tid) + '、','、' + BB.TopTids + '、') > 0
/*
id Tid id TopTids
1 1001 1 1001、1002、1003
*/