34,623
社区成员
![](https://csdnimg.cn/release/cmsfe/public/img/topic.427195d5.png)
![](https://csdnimg.cn/release/cmsfe/public/img/me.40a70ab0.png)
![](https://csdnimg.cn/release/cmsfe/public/img/task.87b52881.png)
![](https://csdnimg.cn/release/cmsfe/public/img/share-circle.3e0b7822.png)
已知字段A和字段B存在对应关系,且A字段存在与B不符合的分隔符。要列出表中A字段去除分隔符之后和B字段不同的全部记录。查询代码怎么写?
比如:A字段为W\O\Q 对应的B字段为WOQ (也就是把A字段的\去掉)和B字段比较,如果A字段去除分隔符与B字段不同,则列出。
我用repalce不行,比如我写了 select * from table1 where repalce(A,‘\’,‘’)<> B 但是报错,无法返回结果。
就是不知道该用哪个函数?请老师指点。
sql server的版本可能不支持,高级函数
--测试数据
if not object_id(N'Tempdb..#T') is null
drop table #T
Go
Create table #T([A] nvarchar(25),[B] nvarchar(23))
Insert #T
select N'W\O\Q',N'WOQ' union all
select N'AA',N'BB'
Go
--测试数据结束
select * from #T where REPLACE(A,'\','')<>B
无图无真相,请贴原始的sql和截图出来