SQLServer字符串的截取
数据库是M$的 SQL 2005
Sql代码
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个字符应该足够用了。
- 07-30 宁夏2019年9月计算机等级考试报考简章
- 07-30 辽宁省2019年下半年全国计算机等级考试网上报名
- 07-30 河北省2019年下半年全国计算机等级考试(NCRE)报名时间
- 07-30 山东省2019年9月计算机等级考试报考通知
- 07-30青海省2019年9月全国计算机等级考试报名公告
- 07-30 西藏2019年9月全国计算机等级考试报考简章
- 07-30 2019年9月全国计算机等级考试报名
- 07-30 新疆2019年9月全国计算机等级(NCRE)考试报名公告
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 04-01“AI复活”生意的启示与挑战
- 04-01超200万人涌入直播间看卖“云” 上千家企业
- 04-01从虚拟到共生:数字人“花样百出”
- 03-29小米汽车“走进”京东,双方或将深化合作
- 03-29迎广交会,广州白云国际机场优化支付服务示