国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

通過function解決部分復雜查詢的方法

2024-07-21 02:39:42
字體:
來源:轉載
供稿:網友
在做一個論壇時,需要取出論壇中某個板塊的相關信息,同時要取得該板塊的版主信息(姓名及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;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 资源县| 晴隆县| 镇江市| 周至县| 武威市| 高雄市| 左贡县| 固始县| 吴桥县| 嘉祥县| 富顺县| 湟中县| 托里县| 家居| 河北省| 襄汾县| 望奎县| 平远县| 都昌县| 新巴尔虎左旗| 茶陵县| 通州市| 韩城市| 闻喜县| 芦山县| 青海省| 卢湾区| 高碑店市| 普格县| 泸定县| 大足县| 上林县| 封丘县| 柳州市| 乌海市| 天长市| 黎平县| 阿合奇县| 博湖县| 漳州市| 渭源县|