我目前使用下面列出的函数来查找2个字符串之间的文本,我的问题是没有找到任何东西,它只是返回一个错误,我不会返回一个空格或空值,任何人都可以提供任何请提供关于如何改变它的建议。?2字符串之间的字符串
CREATE FUNCTION [dbo].[udf_GetStringBetween2Strings]
(
@String varchar(max),
@FirstString varchar(256),
@SecondString varchar(256)
)
RETURNS VARCHAR(max)
AS
BEGIN
DECLARE @FirstPosition int, @SecondPosition int
SET @FirstPosition = CHARINDEX(@FirstString,@String) + LEN(@FirstString)
SET @SecondPosition = CHARINDEX(@SecondString,@String)
RETURN (SELECT SUBSTRING(@String, @FirstPosition, @SecondPosition - @FirstPosition))
END
什么是你的输入参数和你有什么期望的输出 – Mansoor
曼苏尔嗨,我已经重新检查功能,我很遗憾,当我最初创建它引起了我原来的问题没有正确保存它。虽然这已经解决了我原来的问题,但我认为我会进一步调查它。例如,我的函数调用的内容类似于select dbo.udf_GetStringBetween2Strings(' merchant_customer_id>','',' merchant_customer_id>'),因为您可以看到我要查找的第一件事是字符串,此返回't_customer_id>我真的很想在第一个字符串不存在的时候找到'Not Found'。 –
PJD
您是否检查了我的下面的查询。是否适合您的预期结果..? – Mansoor