专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » function:通过function解决部分复杂查询的思路方法 »正文

function:通过function解决部分复杂查询的思路方法

来源: 发布时间:星期二, 2009年5月5日 浏览:0次 评论:0
="t18"> 在做个论坛时需要取出论坛中某个板块相关信息同时要取得该板块版主信息(姓名及Id)但版主可能是多个不便于使用直接关联手段来实现那样可能导致数据量大而且会增加复杂度
后考虑种变通手段可以利用个function来取得所有版主信息将他们拼合为在取得板块信息时在select语句中加入个function ,从而得到相应结果
以下是部分例子:

----------利用function 取得版主信息
FUNCTION getOwNerofTheme(p_themeId NUMBER) RETURN VARCHAR2
IS
tempStr VARCHAR2(300);
tempcur tcur;
vuserid VARCHAR2(20);
vusername VARCHAR2(20);
BEGIN
OPEN tempcur FOR SELECT a.userid,a.username
FROM home_user a,home_forumowner b
WHERE a.userid=b.userid AND b.themeid=p_themeId;
LOOP
FETCH tempcur INTO vuserid,vusername;
EXIT WHEN tempcur%NOTFOUND OR tempcur%NOTFOUND IS NULL;
tempStr:=tempStr vuserid ':'vusername',';
END LOOP;
CLOSE tempcur;
RETURN tempStr;
END;

---在存储过程中在select子句中function
procedure
is
begin
SELECT themeId,getOwnerOfTheme(themeid) owner
FROM home_forumtheme ORDER BY themeid;
end;
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: