SqlServer中截取(获取)字符串中特定字符分割的每个元素
--执行结果:
SELECT CASE LEN(SUBSTRING(Request_AllAddress,0,CHARINDEX(';',Request_AllAddress)))
WHEN 0 THEN REQUEST_ADDRESS
ELSE SUBSTRING(Request_AllAddress,0,CHARINDEX(';',Request_AllAddress))
END NewAddress,
CASE LEN(SUBSTRING(Request_AllAddress,0,CHARINDEX(';',Request_AllAddress)))
WHEN 0 THEN ''
ELSE PARSENAME(REPLACE(Request_AllAddress,';','.'),2)
END DanYuan,
CASE LEN(SUBSTRING(Request_AllAddress,0,CHARINDEX(';',Request_AllAddress)))
WHEN 0 THEN ''
ELSE PARSENAME(REPLACE(Request_AllAddress,';','.'),1)
END Hao,
CASE LEN(SUBSTRING(Request_AllAddress,0,CHARINDEX(';',Request_AllAddress)))
WHEN 0 THEN ''
ELSE PARSENAME(REPLACE(Request_AllAddress,';','.'),3)
END Lou
FROM WORK_REQUEST
WHERE REQUEST_ID=526
源字符串:
执行结果: