公司日志系统变态,用户操作url记录在数据库中,我需要从一条信息中找到参数pid的值,而pid参数后面是否有参数未知,无奈只好自己写个函数处理。
数据库是M$的 SQL 2005
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Snowolf
-- Create date: 2008-10-17
-- Description: 从URL中获取参数值
-- =============================================
CREATE FUNCTION getParam(@url nvarchar(max),@param nvarchar(max))
RETURNS nvarchar(max)
AS
BEGIN
declare
@separator nvarchar(max), -- 分隔符
@base nvarchar(max),
@index int
set @separator='&'
-- 截取参数名开头的字符串
-- 'abc.do?pid=12124123&x=5'
-- 变为
-- 'pid=12124123&x=5'
set @base = substring(@url,charindex(@param,@url,0),400)
-- 替换掉参数头
set @base = replace(@base,(@param+'='),'')
-- 'pid=12124123&x=5'
-- 变为
-- '12124123&x=5'
-- 基于上述结果取得分隔符位置
set @index = charindex(@separator,@base,0)
-- 当分割符存在则替换&符号开始的全部信息
-- 当分割符不存在则直接返回
RETURN (case @index when 0 then @base else replace(@base,substring(@base,@index,400),'') end)
END
GO
至于,这个字符串该有多大,400个字符应该足够用了。
分享到:
相关推荐
SQLServer数据库中创建字符串截取功能(Split),调用方法: Split(string,str)
SQL截取字符串函数(1、截取从字符串左边开始N个字符 2、截取从字符串右边开始N个字符(例如取字符www.163.com) 3、截取字符串中任意位置及长度 等等)
资源名称:MS-SQL SERVER从字符串中搜索符合指定范围的数值资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
sqlServer截取表里面的Json获得所想要的数据事的完成新增一个所想得到的数据或者列
SQL Server字符串处理函数大全 sql server是一个数据库,文档介绍了这个数据库的字符串操作函数
sqlserver连接字符串大全,基本涵盖全了
sql server拼接字符串查询语句。 普通拼接字符串和拼接某一列的所有值。
2、按指定符号分割字符串,返回“分割后指定索引的第几个元素”的值,象数组一样方便 3、检查一个元素是否在数组中,返回1或0 4、检查一个元素是否与数组中的相匹配,并返回相匹配的数组的值。参数值为0表示全模糊...
主要用于在数据库设计时需要自己生成定长的字符串作为关键字。这一个用户字符串每次递增而形成新串的数据库函数方法。
SQL截取以逗号分隔的字符串SQL截取以逗号分隔的字符串SQL截取以逗号分隔的字符串SQL截取以逗号分隔的字符串
SQLServer逗号分隔的字符串转换成表
用SQL语句截取字符串, string substr ( string string, int start [, int length]) 参数1:处理字符串 参数2:截取的起始位置(第一个字符是从0开始) 参数3:截取的字符数量
自己写了一个function 用于处理拆分时的逻辑运算,性能比网上找的快好几倍, 代码和说明:https://blog.csdn.net/jimyao37/article/details/123522885
ms sql server 字符合计,类似sum函数的功能,不过是针对字符型!
ms sql server2000导入到ms sql server 2005,你只需按照文档里写的方法操作即可。
sqlserver中根据某个字符切割字符串函数,比如根据逗号切割字符串,结果返回的是一个表值函数,这个函数返回结果字段包含Id和Value,Id为序号,Value为切割后的值
Visual C++源代码 138 如何解析SQL Server连接字符串信息Visual C++源代码 138 如何解析SQL Server连接字符串信息Visual C++源代码 138 如何解析SQL Server连接字符串信息Visual C++源代码 138 如何解析SQL Server...