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
相关文章读者评论发表评论 |
|