2010-10-08 41 views
2

我有一个字符串,格式为'DOMAIN \ username'。TSQL修剪 - 便携式方法

我想修剪字符串中的域和反斜杠。我不能简单地使用RIGHT(),因为我们有多个不同长度的域。

什么是最便携的方式来做到这一点?

谢谢。

+1

“便携式法” - 移植到SQL服务器的过去/未来的版本,SQL等产品,还是其他什么东西? – onedaywhen 2010-10-08 09:30:31

+1

如果有多个域名,将域名信息从用户名中剥离出去听起来有点危险 – 2010-10-08 09:41:58

回答

4

Select Right('DOMAIN\UserName', Len('DOMAIN\UserName') - Charindex('\', 'DOMAIN\UserName'))

+0

为什么downvote? – codingbadger 2010-10-08 11:08:36

+0

可能因为这会产生不正确的结果。 – LukeH 2010-10-08 11:37:47

+0

@LukeH - 就这样。看不到那个。我现在修改了我的答案。谢谢。 – codingbadger 2010-10-08 11:41:00

2

你可以试试:

select substring('DOMAIN\username', charindex('\' ,'DOMAIN\username')+1, len('DOMAIN\username'))