如何在SQL Server中使用函数通过提供函数名称,特定单词,下一个要打印的字母数来选择一个特定字母后的下n个字母
例如:函数名称,“特定字母”,要在特定字母旁边打印的字母
答案 0 :(得分:0)
在SQL Server上将CHARINDEX
与SUBSTRING
混合在一起。
DECLARE @Text VARCHAR(100) = 'The cat is under the table.'
DECLARE @CharToSearch CHAR = 's'
DECLARE @CharactersToRetrieve INT = 5
SELECT
CharacterPosition = CHARINDEX(@CharToSearch, @Text),
TrimmedString = SUBSTRING(
@Text,
CHARINDEX(@CharToSearch, @Text) + 1,
@CharactersToRetrieve)
结果:
CharacterPosition TrimmedString
10 unde
答案 1 :(得分:0)
如果您使用的是MySQL,请尝试以下查询
select substring(user_name,locate("a",user_name)+1,2) from user_details where user_id=3;
在上述查询中,我尝试从user_name
表的user_details
字段的user_id
字段中首次出现字母'a'后获取2个字母,{1}}是3。 >
根据需要修改查询。
答案 2 :(得分:0)
创建函数new(@text varchar(50),@ CharToSearch char,@ CharactersToRetrieve int)
返回varchar(100)
AS
开始
DECLARE @new varchar(20)
DECLARE @CharToSearchs int
select @CharToSearchs= CHARINDEX(@CharToSearch, @text);
set @new=SUBSTRING(@text,@CharToSearchs+1,@CharactersToRetrieve)
RETURN @new
END