请问这个存储过程或SQL怎么写

gliderstar 2007-04-02 05:21:19
有一个字段,字段内容为 xxxx?sid=12345 或 XXXX?sid=123&open=true
我想取出sid的值,即12345和123这样的存储过程或sql该如何写?
...全文
203 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gliderstar 2007-04-03
  • 打赏
  • 举报
回复
大家看看这个function对不对
CREATE OR REPLACE FUNCTION f_getpramvaluenew (p_str IN VARCHAR2)
RETURN VARCHAR2
AS
v_return VARCHAR2 (2048);
BEGIN
IF INSTR (p_str, 'sid=') > 0
THEN
v_return := SUBSTR (p_str, INSTR (p_str, 'sid=') + 4);
END IF;

IF INSTR (v_return, '&') > 0
THEN
v_return := RTRIM (SUBSTR (v_return, 1, INSTR (v_return, '&') - 1));
END IF;

RETURN v_return;
EXCEPTION
WHEN OTHERS
THEN
RETURN 'error';
END;
Eric_1999 2007-04-03
  • 打赏
  • 举报
回复
substr()把数字截取出来就是拉!
gliderstar 2007-04-03
  • 打赏
  • 举报
回复
但这个字段有很多条记录,我要遍历所有记录取出sid的集合
punoja 2007-04-02
  • 打赏
  • 举报
回复
太简单了
substr()函数,你去查查资料!
hdevil 2007-04-02
  • 打赏
  • 举报
回复
字段内容为 xxxx?sid=12345 或 XXXX?sid=123&open=true


不是很理解 这个字段是varchar的 内容就是 xxxx?sid=12345?

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧